harbor搭建核心是“配得准、启得稳、连得上、管得住”:需严格满足os(centos7/8或ubuntu18.04/20.04)、硬件(4核8g100gb ssd起)、docker≥19.03等依赖;下载离线包后修改hostname、data_volume及https证书路径;客户端须配置可信证书或insecure-registries并docker login验证。

直接用 Harbor 搭建企业级私有镜像仓库,核心是“配得准、启得稳、连得上、管得住”。它不是简单跑个容器,而是围绕安全、权限和可维护性做系统配置。下面分四块说清楚关键动作。
环境与依赖必须一步到位
Harbor 对底层要求明确,跳过检查容易在启动后报错:
- 操作系统选 CentOS 7/8 或 Ubuntu 18.04/20.04,关闭 SELinux(setenforce 0)和防火墙临时放行端口(80、443、4443)
- 硬件最低要 4 核 CPU + 8GB 内存 + 100GB 磁盘(SSD 更佳),生产环境建议翻倍
- Docker 版本 ≥ 19.03,Docker Compose ≥ 1.25;验证命令:docker --version 和 docker-compose --version
- 提前装好 curl、wget、git 等基础工具,避免安装中途卡住
安装包下载与关键配置修改
Harbor 官方只提供离线安装包,配置文件决定服务能否对外可用:
- 从 https://github.com/goharbor/harbor/releases 下载最新版(如 v2.9.0),解压到 /opt/harbor
- 重命名 harbor.yml.tmpl → harbor.yml,重点改三项:
• hostname:填域名(如 harbor.example.com)或服务器 IP(不能写 localhost)
• http.port:若走 HTTP,设为 80;推荐直接配 HTTPS(见下一条)
• data_volume:指定镜像存储路径(如 /data/harbor),确保目录存在且有读写权限
HTTPS 配置不是可选项
现代 Docker 客户端默认拒绝非 HTTPS 的私有仓库,跳过这步 pull/push 会失败:
- 用 OpenSSL 生成自签名证书(开发测试)或申请 Let’s Encrypt / 企业 CA 证书
- 把 cert.pem 和 key.pem 放到 /opt/harbor/certs/ 目录下
- 在 harbor.yml 中取消 https 区块注释,填入证书路径和端口(如 443)
- 执行 ./install.sh 前务必确认配置无语法错误,否则容器起不来
客户端拉取前的必要设置
服务端跑起来了,客户端不配置照样连不上:
- 如果用了 HTTPS 且证书可信(如 Let’s Encrypt),无需额外操作
- 如果用了自签名证书,需将 cert.pem 复制到每台客户端的 /etc/docker/certs.d/
/ca.crt - 若坚持用 HTTP(仅限内网测试),在客户端 /etc/docker/daemon.json 加:
{"insecure-registries": ["your-hostname:80"]}
然后重启 Docker:systemctl restart docker - 登录验证:docker login https://your-hostname(输入 admin 密码,默认是 Harbor 安装时设定的)











