Harbor镜像仓库离线安装

作者:zhangyunlong 发布时间: 2023-07-10 阅读量:8 评论数:0

0. Harbor是什么

Harbor 是一个开源的镜像仓库服务,用于容器镜像、Helm Chart 等符合 OCI 标准的 Artifact 的安全托管及高效分发,能够帮助您跨云原生计算平台(如 Kubernetes 和 Docker)一致且安全地管理 Artifact。

1. 下载离线安装包

harbor离线安装资源包.tgz

wget https://storage.googleapis.com/harbor-releases/release-2.8.0/harbor-offline-installer-latest.tgz

2. 解压离线安装包

tar -zxvf harbor-offline-installer-latest.tgz

3. 修改Harbor配置文件

进入解压后的目录, 编辑harbor.yml.tmpl文件
将hostname的值改为部署机器的ip, 例如192.168.186.202
将http: port的值改为要监听的端口, 例如1180
将https相关内容注释掉
将harbor_admin_password的值改为自定义密码, 例如password1234
将data_valume的值改为要挂载harbor数据的目录, 例如/opt/harbor/data
保存后将harbor.yml.tmpl文件重命名为harbor.yml

4. 修改Harbor解压目录权限

chmod 777 /解压目录/

5. 执行安装脚本

进入harbor解压目录, 执行安装

[root@dc-202 harbor]# sh install.sh 

[Step 0]: checking if docker is installed ...

Note: docker version: 24.0.0

[Step 1]: checking docker-compose is installed ...

Note: docker-compose version: 2.40.3

[Step 2]: loading Harbor images ...
bcd4591a1a5a: Loading layer [==================================================>]  91.73MB/91.73MB
af3f46d7aeca: Loading layer [==================================================>]  3.584kB/3.584kB
5380c26af354: Loading layer [==================================================>]  3.072kB/3.072kB
6462f972b019: Loading layer [==================================================>]   2.56kB/2.56kB
8cb0c83ac487: Loading layer [==================================================>]  3.072kB/3.072kB
cfbe2a0d2719: Loading layer [==================================================>]  3.584kB/3.584kB
e5293f9ebbe6: Loading layer [==================================================>]  20.48kB/20.48kB
Loaded image: goharbor/harbor-log:v2.8.2
...
[Step 5]: starting Harbor ...
WARN[0000] /opt/harbor/docker-compose.yml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion 
[+] Running 10/10
 ✔ Network harbor_harbor        Created                                          0.2s                                                                                          
 ✔ Container harbor-log         Started                                          4.0s                                                                                              
 ✔ Container registry           Started                                          6.8s                                                                                              
 ✔ Container registryctl        Started                                          5.5s                                                                                        
 ✔ Container harbor-portal      Started                                          5.5s                                                                                              
 ✔ Container redis              Started                                          4.6s                                                                                              
 ✔ Container harbor-db          Started                                          5.8s                                                                                              
 ✔ Container harbor-core        Started                                          6.2s                                                                                              
 ✔ Container nginx              Started                                          6.8s                                                                                              
 ✔ Container harbor-jobservice  Started                                          6.7s                                                                                              
✔ ----Harbor has been installed and started successfully.----
[root@dc-202 harbor]# 

6. 登录Harbor控制台界面

http://192.168.186.202:1180

admin/password1234

7. 从Harbor仓库拉取镜像

在docker中配置完harbor私有仓库地址后, 可以直接使用命令拉取镜像

命令为: docker pull harbor仓库地址/镜像地址/镜像名:镜像标签

示例: docker pull 192.168.186.200:1180/library/kibana:7.6.2

8.推送镜像到Harbor仓库

# 先执行登陆命令
docker login -u admin -p Harbor12345 192.168.162.3:1180
# 将要推到私有仓库的镜像打标签
docker tag 本地镜像名:镜像版本 192.168.162.3:1180/library/新镜像名:新镜像版本
# 推送到私有仓库
docker push 192.168.162.3:1180/library/新镜像名:新镜像版本

评论