■ Harbor被部署为多个Docker容器,因此可以部署在任何支持 Docker的 Linux发行版上。(registry 为其核心组件)
■ Harbor 比 registry相比好处是: harbor支持多种功能、图形化界面管理、多用户权限、角色管理机制、安全机制
■ 服务端主机需要安装 Python、Docker引擎和 Docker Compose(web环境支持的是PY语言,故需要安装Python)
[root@docker ~]# tar zxvf harbor-offline-installer-v1.2.2.tgz -C /opt
[root@docker ~]# cd /opt
[root@docker opt]# ls
[root@docker opt]# cd harbor/
[root@docker harbor]# ls
注:关于Harbor.cfg配置文件中有两类参数:所需参数和可选参数
(1)所需参数这些参数需要在配置文件Harbor.cfg中设置。如果用户更新它们并运行install.sh 脚本重新安装 Harbour,参数将生效。具体参数如下:
(2)可选参数
这些参数对于更新是可选的,即用户可以将其保留为默认值,并在启动 Harbor后在 Web ul上进行更新如果进入 Harbor.cfg,只会在第一次启动Harbor时生效,随后对这些参数的更新,Harbor.cfg将被忽略。
注意:如果选择通过UI设置这些参数,请确保在启动Harbour后立即执行此操作。具体来说,必须在注册或在 Harbor 中创建任何新用户之前设置所需的auth_mode。当系统中有用户时(除了默认的admin用户) ,auth_mode 不能被修改。具体参数如下:
[root@docker harbor]# vim harbor.cfg
[root@docker opt]# rz #下载docker-compose
[root@docker opt]# ls
containerd docker-compose harbor rh test.sh
[root@docker opt]# chmod +x docker-compose
[root@docker opt]# mv docker-compose /usr/bin/
[root@docker harbor]# sh install.sh
[root@docker harbor]# docker-compose ps
[root@docker harbor]# docker login -u admin -p Harbor12345 http://127.0.0.1
[root@docker harbor]# docker pull cirros
[root@docker harbor]# docker tag cirros:latest 127.0.0.1/public-07/cirros:v1
[root@docker harbor]# docker push 127.0.0.1/public-07/cirros:v1
[root@docker1 system]# docker login -u admin -p Harbor12345 http://192.168.140.20
[root@docker1 system]# docker pull 192.168.140.20/public-07/cirros:v1
[root@docker1 system]# docker pull httpd
[root@docker1 system]# docker images
[root@docker1 system]# docker tag httpd:latest 192.168.140.20/public-07/httpd:v1 #打标签
[root@docker1 system]# docker images
[root@docker1 system]# docker push 192.168.140.20/public-07/httpd:v1
[root@docker harbor]# docker-compose down -v #必须在有docker-compose.yml文件的目录下操作
[root@docker harbor]# ./prepare #重新执行安装
[root@docker harbor]# docker-compose up -d
[root@docker harbor]# docker ps -a
[root@docker1 system]# docker login -u zhangsan -p Abc12345 http://192.168.140.20
[root@docker1 system]# docker images
[root@docker1 system]# docker pull 192.168.140.20/public-07/cirros:v1
[root@docker1 system]# docker images
注:如需重新部署,需要移除 Harbor服务容器全部数据
持久数据,如镜像,数据库等在宿主机的/data/目录下,日志在宿主机的/var/log/Harbor/目录下
rm -rf /data/database/
rm -rf /data/registry/