logo

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

作者:Nicky2025.10.10 18:40浏览量:4

简介:本文详细介绍如何在Linux服务器上通过命令行模式使用Docker搭建Harbor私有镜像仓库,涵盖环境准备、Harbor安装、配置、启动及基础使用方法,适合开发者和运维人员。

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

一、引言

在容器化部署日益普及的今天,私有镜像仓库成为保障应用安全、提升部署效率的关键基础设施。Harbor作为开源的企业级私有仓库解决方案,不仅支持镜像存储、签名验证,还提供RBAC权限控制、漏洞扫描等高级功能。本文将详细介绍如何通过命令行模式,在Linux服务器上基于Docker快速搭建Harbor私有镜像仓库,帮助开发者及运维人员实现高效、安全的镜像管理。

二、环境准备

2.1 服务器要求

  • 操作系统:推荐CentOS 7/8、Ubuntu 18.04/20.04等主流Linux发行版。
  • 硬件配置:至少4GB内存(生产环境建议8GB+)、20GB以上磁盘空间(根据镜像存储需求调整)。
  • 网络要求:确保服务器可访问外网(用于下载Docker及Harbor镜像),若需内网访问,需配置内网DNS解析。

2.2 安装Docker

Harbor依赖Docker运行,需先安装Docker Engine及Docker Compose(Harbor 2.0+推荐使用)。

  1. # 以CentOS为例
  2. sudo yum install -y yum-utils
  3. sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
  4. sudo yum install docker-ce docker-ce-cli containerd.io
  5. sudo systemctl enable --now docker
  6. # 验证安装
  7. sudo docker run hello-world

2.3 安装Docker Compose

  1. 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
  2. sudo chmod +x /usr/local/bin/docker-compose
  3. docker-compose --version

三、Harbor安装与配置

3.1 下载Harbor安装包

访问Harbor官方GitHub,选择最新稳定版(如v2.5.0),下载二进制包或使用wget直接下载:

  1. wget https://github.com/goharbor/harbor/releases/download/v2.5.0/harbor-offline-installer-v2.5.0.tgz
  2. tar xvf harbor-offline-installer-v2.5.0.tgz
  3. cd harbor

3.2 配置Harbor

修改harbor.yml.tmpl文件(或复制为harbor.yml):

  1. # 关键配置项
  2. hostname: your.domain.com # 替换为实际域名或IP(若使用IP,需在客户端配置/etc/hosts)
  3. http:
  4. port: 80 # HTTP访问端口
  5. # HTTPS配置(生产环境建议启用)
  6. # https:
  7. # port: 443
  8. # certificate: /path/to/cert.pem
  9. # private_key: /path/to/key.pem
  10. harbor_admin_password: Harbor12345 # 初始管理员密码
  11. database:
  12. password: root123 # 数据库密码

3.3 运行安装脚本

  1. # 生成配置文件(若修改了harbor.yml.tmpl)
  2. cp harbor.yml.tmpl harbor.yml
  3. # 执行安装(自动下载依赖镜像并启动)
  4. sudo ./install.sh

四、Harbor启动与管理

4.1 启动与停止

Harbor通过Docker Compose管理,启动/停止命令如下:

  1. # 启动
  2. cd /path/to/harbor
  3. sudo docker-compose up -d
  4. # 停止
  5. sudo docker-compose down

4.2 访问Harbor

浏览器访问http://your.domain.com(或IP),输入用户名admin及配置的密码登录。

4.3 配置HTTPS(可选)

生产环境需启用HTTPS以保障安全:

  1. 生成证书(使用Let’s Encrypt或自签名):
    1. openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
    2. -keyout /etc/pki/tls/private/harbor.key \
    3. -out /etc/pki/tls/certs/harbor.crt \
    4. -subj "/CN=your.domain.com"
  2. 修改harbor.yml中的HTTPS配置,重新运行install.sh

五、Harbor基础使用

5.1 推送镜像到Harbor

  1. 登录Harbor:
    1. docker login your.domain.com
    2. # 输入用户名(admin或创建的项目用户)及密码
  2. 标记镜像并推送:
    1. docker tag nginx:latest your.domain.com/library/nginx:v1
    2. docker push your.domain.com/library/nginx:v1

5.2 从Harbor拉取镜像

  1. docker pull your.domain.com/library/nginx:v1

5.3 创建项目与用户

  1. 创建项目:登录Harbor Web界面,点击“新建项目”,设置项目名称(如dev-team)及访问级别(公开/私有)。
  2. 创建用户:在“用户管理”中添加用户,分配至项目并设置角色(如开发者、访客)。

六、高级功能与维护

6.1 漏洞扫描

Harbor集成Clair进行镜像漏洞扫描,需在harbor.yml中启用:

  1. clair:
  2. enabled: true
  3. http_proxy:
  4. https_proxy:

重启Harbor后,扫描结果可在镜像详情页查看。

6.2 备份与恢复

  1. 备份数据
    1. # 备份数据库(PostgreSQL
    2. sudo docker exec -it harbor-db pg_dump -U postgres -F c harbor > harbor_backup.dump
    3. # 备份配置文件
    4. cp harbor.yml harbor.yml.bak
  2. 恢复数据:使用备份文件重新初始化数据库并恢复配置。

6.3 升级Harbor

  1. 下载新版安装包。
  2. 停止当前Harbor:
    1. cd /path/to/harbor
    2. sudo docker-compose down
  3. 更新harbor.yml(如有配置变更),运行新版install.sh

七、常见问题与解决

7.1 端口冲突

若80端口被占用,修改harbor.yml中的http.port为其他端口(如8080),并更新防火墙规则。

7.2 证书问题

客户端使用自签名证书时,需在/etc/docker/daemon.json中配置:

  1. {
  2. "insecure-registries": ["your.domain.com"]
  3. }

重启Docker服务:

  1. sudo systemctl restart docker

7.3 性能优化

  • 磁盘空间:定期清理未使用的镜像(docker system prune)。
  • 内存限制:在docker-compose.yml中为Harbor服务设置内存限制(如mem_limit: 2g)。

八、总结

通过命令行模式搭建Harbor私有镜像仓库,开发者可快速构建安全、高效的镜像管理平台。本文从环境准备、安装配置到基础使用及高级功能,提供了完整的操作指南。实际部署中,需根据业务需求调整配置(如HTTPS、RBAC权限),并定期维护以确保稳定性。Harbor的集成能力(如与Jenkins、Kubernetes联动)将进一步释放容器化部署的潜力,值得深入探索。

相关文章推荐

发表评论

活动