每日一Go-61、构建云原生基石:Harbor 私有镜像仓库在企业级生产环境中的落地实践

目前,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.100或hub.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天训练营”,有需要的同学自取,为了激励同学们的学习,采用收费的模式,如果学不到东西,可以随时退费。
*源码地址*
原文地址: https://mp.weixin.qq.com/s/9AUm_wmsMVfTcfUrPhibfw
如果您喜欢这篇文章,请您(点赞、分享、亮爱心),万分感谢!
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐

所有评论(0)