一、环境要求

  • 操作系统: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仓库,需配置信任非安全仓库:

  1. 编辑Docker守护进程配置
vi /etc/docker/daemon.json
  1. 写入配置(替换为你的仓库地址+端口)
{
  "insecure-registries": ["仓库访问地址:自定义端口"]
}
  1. 重启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(可选)

  1. 准备域名及SSL证书(公钥、私钥),上传至服务器指定目录
  2. 编辑 harbor.yml,注释HTTP配置,开启HTTPS并填写证书路径
hostname: 仓库域名

# http:
#   port: 80

https:
  port: 443
  certificate: 证书公钥绝对路径
  private_key: 证书私钥绝对路径
  1. 重新初始化并生效配置
./prepare
./install.sh

开启正规HTTPS证书后,客户端无需配置 insecure-registries

十三、常见报错说明

报错:http: server gave HTTP response to HTTPS client
原因:客户端默认使用HTTPS访问纯HTTP仓库
解决:严格执行第八步 Docker客户端信任配置,重启Docker后重试登录、推拉镜像。

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐