logo

Docker搭建Harbor私有镜像仓库全攻略(命令行模式)

作者:搬砖的石头2025.10.10 18:41浏览量:2

简介:本文详细介绍如何通过命令行模式使用Docker搭建Harbor私有镜像仓库,包括环境准备、安装部署、配置优化及日常管理,适合开发者及企业用户快速上手。

一、引言:为何需要Harbor私有镜像仓库?

在容器化技术日益普及的今天,Docker镜像的管理成为开发者和企业用户关注的重点。公有镜像仓库如Docker Hub虽然方便,但在安全性、隐私保护及网络依赖等方面存在局限性。Harbor作为一款开源的企业级Docker镜像仓库管理工具,提供了镜像存储、访问控制、镜像签名、漏洞扫描等高级功能,特别适合需要高度可控镜像管理环境的企业。本文将详细介绍如何通过命令行模式,利用Docker快速搭建Harbor私有镜像仓库。

二、环境准备

1. 硬件与软件要求

  • 硬件:至少4GB内存(推荐8GB以上),20GB以上可用磁盘空间。
  • 操作系统:Linux(推荐CentOS 7/8, Ubuntu 18.04/20.04)。
  • Docker:安装Docker CE或EE版本。
  • Docker Compose:用于编排Harbor服务。

2. 安装Docker与Docker Compose

安装Docker

以CentOS为例,执行以下命令安装Docker:

  1. # 卸载旧版本(如有)
  2. sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine
  3. # 安装依赖
  4. sudo yum install -y yum-utils device-mapper-persistent-data lvm2
  5. # 添加Docker官方仓库
  6. sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
  7. # 安装Docker CE
  8. sudo yum install docker-ce docker-ce-cli containerd.io
  9. # 启动Docker服务
  10. sudo systemctl start docker
  11. sudo systemctl enable docker

安装Docker Compose

  1. # 下载Docker Compose二进制文件
  2. sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
  3. # 赋予执行权限
  4. sudo chmod +x /usr/local/bin/docker-compose
  5. # 验证安装
  6. docker-compose --version

三、Harbor安装与部署

1. 下载Harbor安装包

访问Harbor官方GitHub仓库(https://github.com/goharbor/harbor/releases),选择适合的版本下载。例如,下载v2.3.3版本:

  1. wget https://github.com/goharbor/harbor/releases/download/v2.3.3/harbor-online-installer-v2.3.3.tgz

2. 解压并配置Harbor

  1. # 解压安装包
  2. tar xvf harbor-online-installer-v2.3.3.tgz
  3. cd harbor
  4. # 复制配置文件模板
  5. cp harbor.yml.tmpl harbor.yml

编辑harbor.yml文件,根据实际需求修改以下关键配置:

  • hostname:设置为服务器的IP地址或域名
  • http.port:HTTP访问端口,默认为80。
  • data_volume:数据存储路径。
  • harbor_admin_password:管理员密码。
  • database.password数据库密码(如使用外部数据库)。
  • clair.enabled:是否启用漏洞扫描(true/false)。

3. 运行安装脚本

  1. # 执行安装脚本
  2. sudo ./install.sh

安装过程中,脚本会自动下载并启动Harbor所需的Docker镜像,包括核心服务、数据库、Redis、Nginx等。安装完成后,会显示“Harbor has been installed and started successfully.”的提示信息。

四、Harbor基本使用与管理

1. 访问Harbor Web界面

打开浏览器,输入配置的hostnamehttp.port,如http://your-server-ip,使用默认管理员账号admin和配置的密码登录。

2. 创建项目与用户

  • 创建项目:在Web界面中,点击“项目”->“新建项目”,输入项目名称,选择访问级别(公开/私有)。
  • 创建用户:在“系统管理”->“用户管理”中,添加新用户,设置用户名、邮箱、密码及角色(开发者、项目管理员等)。

3. 推送与拉取镜像

推送镜像

  1. 登录Harbor
  1. docker login your-server-ip

输入用户名和密码。

  1. 标记镜像
  1. docker tag your-image-name your-server-ip/your-project-name/your-image-name:tag
  1. 推送镜像
  1. docker push your-server-ip/your-project-name/your-image-name:tag

拉取镜像

  1. docker pull your-server-ip/your-project-name/your-image-name:tag

4. 配置HTTPS访问(可选)

为提高安全性,建议配置HTTPS访问。需准备SSL证书,并修改harbor.yml中的https相关配置,包括证书路径和端口。修改后,重新运行./install.sh --with-clair(如启用了Clair)或./install.sh

五、高级配置与优化

1. 启用镜像复制

Harbor支持镜像复制功能,可将镜像从一个Harbor实例复制到另一个。在Web界面中,进入“系统管理”->“复制管理”,添加复制目标,配置复制规则。

2. 集成LDAP/AD认证

对于企业环境,可集成LDAP或Active Directory进行用户认证。修改harbor.yml中的auth_modeldap,并配置LDAP服务器信息。

3. 监控与日志

  • 监控:Harbor自带Prometheus和Grafana监控,可通过http://your-server-ip/api/v2.0/health检查服务状态。
  • 日志:日志文件位于/var/log/harbor/目录下,可使用docker-compose logs命令查看容器日志。

六、总结与展望

通过命令行模式使用Docker搭建Harbor私有镜像仓库,不仅提高了镜像管理的安全性和可控性,还为企业提供了灵活的镜像存储、访问控制及高级功能支持。随着容器化技术的不断发展,Harbor将持续优化,支持更多高级特性,如多租户管理、更细粒度的权限控制等。对于开发者及企业用户而言,掌握Harbor的搭建与管理,是提升容器化应用部署效率与安全性的重要一环。

相关文章推荐

发表评论

活动