【 Docker 】部署构建私有仓库Harbor
🚀 Harbor 私有 Docker 镜像仓库部署指南
Harbor 是一个 企业级 私有 Docker 镜像仓库,提供 镜像存储、用户管理、权限控制、安全扫描 等功能,适用于 企业生产环境。
📌 1. 服务器环境要求
- 操作系统:Linux(CentOS 7+/Ubuntu 20.04+/Rocky Linux 9+)
- CPU:2 核以上
- 内存:4GB 以上(推荐 8GB)
- 存储:50GB 以上(根据镜像大小调整)
- Docker 版本:28.0.0+
- Docker Compose 版本:2.0+
📌 2. 安装 Docker 28.0.0 和 Docker Compose
📍 2.1 安装 Docker
curl -fsSL https://get.docker.com | bash
systemctl enable docker --now
📍 2.2 验证 Docker 版本
docker version
确保 Client & Server 版本均为 28.0.0
及以上。
📍 2.3 安装 Docker Compose
mkdir -p /usr/local/lib/docker/cli-plugins
curl -SL https://github.com/docker/compose/releases/latest/download/docker-compose-linux-x86_64 -o /usr/local/lib/docker/cli-plugins/docker-compose
chmod +x /usr/local/lib/docker/cli-plugins/docker-compose
docker compose version
📌 3. 下载 Harbor
wget https://github.com/goharbor/harbor/releases/download/v2.9.0/harbor-offline-installer-v2.9.0.tgz
tar -zxvf harbor-offline-installer-v2.9.0.tgz
cd harbor
📌 4. 配置 Harbor
📍 4.1 复制并编辑 Harbor 配置
cp harbor.yml.tmpl harbor.yml
vi harbor.yml
修改关键参数
hostname: myharbor.example.com # 你的域名或IP
http:
port: 80 # 监听端口
harbor_admin_password: "Harbor12345" # Harbor 管理员密码
📌 5. 启动 Harbor
./install.sh
成功后访问:
http://myharbor.example.com
默认管理员账号:
- 用户名:
admin
- 密码:
Harbor12345
📌 6. 配置 Docker 允许 Harbor 作为可信仓库
如果 Harbor 使用 HTTP(非 HTTPS),需要让 Docker 允许 Insecure Registry:
vi /etc/docker/daemon.json
添加:
{
"insecure-registries": ["myharbor.example.com"]
}
然后重启 Docker:
systemctl restart docker
📌 7. 登录 Harbor 并推送镜像
📍 7.1 登录 Harbor
docker login myharbor.example.com
输入:
- 用户名:
admin
- 密码:
Harbor12345
📍 7.2 创建 Harbor 项目
- 访问
http://myharbor.example.com
- 登录 后,进入 "项目",点击 "新建项目",创建一个名为
myproject
的项目。
📍 7.3 标记镜像
docker tag ubuntu:latest myharbor.example.com/myproject/ubuntu:latest
📍 7.4 推送镜像
docker push myharbor.example.com/myproject/ubuntu:latest
📍 7.5 拉取镜像
docker pull myharbor.example.com/myproject/ubuntu:latest
📌 8. 配置 HTTPS(推荐)
📍 8.1 生成自签名证书
mkdir -p /certs && cd /certs
openssl req -newkey rsa:4096 -nodes -sha256 -keyout harbor.key -x509 -days 365 -out harbor.crt
填写证书信息时,Common Name (CN) 应填写你的 Harbor 域名。
📍 8.2 配置 Harbor 使用 HTTPS
编辑 harbor.yml
:
hostname: myharbor.example.com
https:
port: 443
certificate: /certs/harbor.crt
private_key: /certs/harbor.key
📍 8.3 重新启动 Harbor
docker compose down
docker compose up -d
📍 8.4 配置 Docker 允许 Harbor HTTPS 证书
mkdir -p /etc/docker/certs.d/myharbor.example.com
cp /certs/harbor.crt /etc/docker/certs.d/myharbor.example.com/ca.crt
systemctl restart docker
📌 9. 开启 Harbor 高级功能
📍 9.1 启用 Clair(镜像扫描)
编辑 harbor.yml
:
clair:
enabled: true
重启 Harbor:
docker compose down
docker compose up -d
现在可以在 Harbor 扫描镜像漏洞!
📍 9.2 启用 Notary(镜像签名)
notary:
enabled: true
Harbor 允许 对镜像进行签名,防止未经授权的修改。
📌 10. Harbor 常见管理命令
查看 Harbor 运行状态
docker compose ps
停止 Harbor
docker compose down
重启 Harbor
docker compose up -d
查看 Harbor 日志
docker logs -f harbor-core
📌 11. 总结
✅ Harbor 是企业级 Docker 镜像仓库
✅ 支持 HTTPS、用户权限、镜像扫描
✅ 支持镜像复制、多节点部署
✅ 适用于团队和企业级生产环境
🚀 现在,你已经成功部署 Harbor 私有镜像仓库 🎉!