【Harbor 】Harbor 私有镜像仓库部署
·
一、环境要求
- 操作系统:CentOS 7+/Ubuntu 18.04+(推荐 CentOS7/8)
- 硬件配置:内存≥4G,磁盘≥50G
- 依赖软件:
- Docker ≥ 20.10
- docker-compose ≥ 2.20
版本检查命令:
docker --version
docker compose version
二、离线包下载
使用清华镜像站下载离线安装包:
wget https://mirrors.tuna.tsinghua.edu.cn/github-release/goharbor/harbor/v2.14.4/harbor-offline-installer-v2.14.4.tgz
三、解压与配置文件初始化
# 解压安装包
tar -zxvf harbor-offline-installer-v2.14.4.tgz
# 进入目录
cd harbor
# 复制配置模板
cp harbor.yml.tmpl harbor.yml
四、基础配置(HTTP 模式,通用最简配置)
编辑配置文件:
vi harbor.yml
修改以下配置项,全程使用通用地址,不暴露真实IP:
# 仓库访问地址(服务器IP/域名)
hostname: 仓库访问地址
# HTTP 访问端口,可自定义
http:
port: 自定义端口
# 关闭HTTPS(无证书场景)
# https:
# port: 443
# certificate: /your/cert/path
# private_key: /your/key/path
# 管理员登录密码,自行设置强密码
harbor_admin_password: 自定义密码
# 镜像数据存储目录
data_volume: /data/harbor
# 日志配置
log:
level: info
local:
rotate_count: 50
rotate_size: 200M
location: /var/log/harbor
保存退出:Esc → 输入 :wq 回车
五、初始化 & 安装启动
# 生成组件配置、校验配置文件
./prepare
# 执行安装并启动所有服务
./install.sh
出现 ----Harbor has been installed and started successfully.---- 代表安装成功。
六、防火墙放行端口
# CentOS firewalld 放行自定义端口
firewall-cmd --add-port=自定义端口/tcp --permanent
firewall-cmd --reload
# Ubuntu ufw 放行端口(二选一执行)
# ufw allow 自定义端口/tcp
七、网页端访问仓库
浏览器输入地址:
http://仓库访问地址:自定义端口
- 登录账号:
admin - 登录密码:
harbor.yml中设置的自定义密码
前置操作:网页端提前创建项目(示例项目名:
项目名称)
八、Docker 客户端全局配置(所有使用机器必做)
Docker 默认拒绝纯HTTP仓库,需配置信任非安全仓库:
- 编辑Docker守护进程配置
vi /etc/docker/daemon.json
- 写入配置(替换为你的仓库地址+端口)
{
"insecure-registries": ["仓库访问地址:自定义端口"]
}
- 重启Docker生效
systemctl restart docker
九、镜像推送完整流程
1. 镜像打标签
格式:docker tag 本地镜像名:标签 仓库地址:端口/项目名称/镜像名:标签
# 示例:本地 nginx:1.30.1 镜像打标签
docker tag nginx:1.30.1 仓库访问地址:自定义端口/项目名称/nginx:1.30.1
2. 登录私有仓库
docker login 仓库访问地址:自定义端口
根据提示输入账号 admin 和仓库密码。
3. 推送镜像至仓库
docker push 仓库访问地址:自定义端口/项目名称/nginx:1.30.1
十、镜像拉取完整流程
在任意已配置信任规则的客户端机器执行:
方式1:直接拉取(常用)
docker pull 仓库访问地址:自定义端口/项目名称/nginx:1.30.1
方式2:拉取后重命名(还原为本地镜像名)
# 拉取仓库镜像
docker pull 仓库访问地址:自定义端口/项目名称/nginx:1.30.1
# 重命名为本地常规名称
docker tag 仓库访问地址:自定义端口/项目名称/nginx:1.30.1 nginx:1.30.1
# 删除仓库格式镜像(可选)
docker rmi 仓库访问地址:自定义端口/项目名称/nginx:1.30.1
十一、Harbor 日常运维命令
需进入 harbor 安装目录执行:
cd /安装路径/harbor
# 启动服务
docker-compose up -d
# 停止服务
docker-compose down
# 查看所有组件运行状态
docker-compose ps
# 实时查看运行日志
docker-compose logs -f
十二、进阶:生产环境开启 HTTPS(可选)
- 准备域名及SSL证书(公钥、私钥),上传至服务器指定目录
- 编辑
harbor.yml,注释HTTP配置,开启HTTPS并填写证书路径
hostname: 仓库域名
# http:
# port: 80
https:
port: 443
certificate: 证书公钥绝对路径
private_key: 证书私钥绝对路径
- 重新初始化并生效配置
./prepare
./install.sh
开启正规HTTPS证书后,客户端无需配置
insecure-registries。
十三、常见报错说明
报错:http: server gave HTTP response to HTTPS client
原因:客户端默认使用HTTPS访问纯HTTP仓库
解决:严格执行第八步 Docker客户端信任配置,重启Docker后重试登录、推拉镜像。
更多推荐



所有评论(0)