图片

目前,Harbor 是全球及国内企业级私有 Docker 仓库(Registry)中最流行、功能最全面的选择。

它最初由 VMware 开源,现在是 CNCF(云原生计算基金会)的毕业项目。相比 Docker 官方提供的简单版 Registry,Harbor 提供了图形化界面、基于角色的权限控制(RBAC)、镜像漏洞扫描、多仓复制以及合规性审计等强大的企业级功能。

以下是 Harbor 的详细搭建步骤:

一、 搭建前准备

在开始之前,请确保你的服务器(建议 Ubuntu 22.04+ 或 CentOS 7.9+)满足以下条件:

  • 硬件配置:建议至少 2 核 CPU、4GB 内存、40GB 硬盘空间。

  • 软件依赖

  • Docker: 17.06.0+

  • Docker Compose: 1.18.0+(现在通常集成在 docker compose 命令中)


二、 搭建 Harbor 步骤

我们将使用 离线安装包 方式,这是生产环境中最稳定的方式。

1. 下载 Harbor 离线安装包

访问Harbor GitHub Releases下载最新版的 offline-installer

# 以 v2.10.0 为例
wget https://github.com/goharbor/harbor/releases/download/v2.10.0/harbor-offline-installer-v2.10.0.tgz
tar -xvf harbor-offline-installer-v2.10.0.tgz
cd harbor

2. 配置 harbor.yml

Harbor 的所有配置都在 harbor.yml 文件中。

cp harbor.yml.tmpl harbor.yml
vi harbor.yml

关键修改项:

  • hostname: 设置为你服务器的 IP 地址或域名(如 192.168.1.100hub.example.com)。

  • http/https:

  • 如果你有 SSL 证书,填入证书路径。

  • 新手测试:建议先注释掉 https 部分,仅保留 http(默认端口 80)。

  • harbor_admin_password: 初始管理员密码(默认是 Harbor12345)。

3. 执行安装脚本

在 harbor 目录下运行安装脚本,--with-trivy 参数会自动安装镜像安全扫描器。

./install.sh --with-trivy

安装完成后,Docker 会启动一系列容器(可以使用 docker compose ps 查看)。

三、访问Hub

浏览器打开你绑定的域名 (http://hub.example.com),能看见如下界面。

图片

用默认的管理员账号(admin:Harbor12345)登录进去就可以管理仓库了。添加一个用户

图片

四、客户端如何连接

由于 Harbor 默认可能使用的是 HTTP 或自签名证书,Docker 客户端出于安全考虑会拒绝连接。你需要配置 insecure-registries

1. 在你的本地机器(或其他需要推送镜像的服务器)编辑Docker配置文件:

sudo vi /etc/docker/daemon.json

2. 添加如下内容(替换为你的Harbor地址):

{
  "insecure-registries": ["你的IP或域名"]
}

3. 重启Docker服务:

sudo systemctl daemon-reload
sudo systemctl restart docker

五、使用流程

1. 登录

docker login 你的IP或域名

图片

2. 标记镜像

# 格式:docker tag [本地镜像] [Harbor地址]/[项目名]/[镜像名]:[版本]
docker tag nginx:latest hub.example.com/library/nginx:v1

图片

3. 推送镜像

docker push 192.168.1.100/library/nginx:v1

图片

4. 在HarborUI里就能看见这个镜像

图片

图片

六、鉴于许多同学对Docker的理解不是太深刻,特意推出了“7天训练营”,有需要的同学自取,为了激励同学们的学习,采用收费的模式,如果学不到东西,可以随时退费。

Docker-7天冲刺训练营

*源码地址*
原文地址: https://mp.weixin.qq.com/s/9AUm_wmsMVfTcfUrPhibfw


如果您喜欢这篇文章,请您(点赞、分享、亮爱心),万分感谢!

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐