Harbor docker私有仓库
C和弦~ 人气:0一.harbor简介
基于镜像的复制策略;支持LDAP/AD域,通过VPN连接域使用;图像删除和垃圾收集;图像UI,方便;审计,此功能使用较少,一般企业中用ELK收集、分析日志;RESTful API
一.harbor构建私有仓库
1.上传dock-compose,并设置权限
[root@harbor ~]# cd /usr/local/bin/ [root@harbor bin]# rz -e [root@harbor bin]# ls docker-compose [root@harbor bin]# chmod +x docker-compose
3、安装harbor-offline-installer-v1.2.2
[root@harbor bin]# cd /usr/local/ [root@harbor local]# rz -e [root@harbor local]# tar zxvf harbor-offline-installer-v1.2.2.tgz
4、配置Harbo参数文件
[root@harbor local]# vim /usr/local/harbor/harbor.cfg #修改第五行 hostname = 192.168.29.77
5、启动Harbor
[root@harbor local]# cd /usr/local/harbor/ [root@harbor harbor]# ls [root@harbor harbor]# sh install.sh
6、查看Harbor启动镜像和容器
(1)查看镜像
docker images
(2)检查服务容器是否开启
cd /usr/local/harbor/ docker-compose ps
7、在UI界面创建项目
浏览器访问访问http://192.168.32.15,默认的管理员用户名和密码是 admin/Harbor12345。
登陆后界面:
添加项目
8、在本地测试仓库功能
此时可使用Docker命令在本地通过127.0.0.1来登录和推送镜像。默认情况下,Register服务器在端口80上侦听。
(1)登录本地私有仓库
docker login -u admin -p Harbor12345 http://127.0.0.1
(2)下载镜像进行测试
docker pull nginx
(3)镜像打标签
docker tag nginx 127.0.0.1/test_items/centos:nginx_v1 docker images
(4)上传镜像到Harbor
docker push 127.0.0.1/test_items/centos:nginx_v1
9、在客户端上,上传镜像
上述操作都是在Harbor服务器本地操作。如果其他客户端上传镜像到Harbor,就会报如下错误。出现这问题的原因Docker Registry交互默认使用的是HTTPS,但是搭建私有镜像默认使用的是HTTP服务,所以与私有镜像交互时出现以下错误。
(1)错误现象
docker login -u admin -p Harbor12345 http://192.168.29.77
(2)解决方法
vim /usr/lib/systemd/system/docker.service #修改内容地方 ...... ExecStart=/usr/bin/dockerd -H fd:// --insecure-registry 192.168.29.33 --containerd=/run/containerd/containerd.sock ...... #重启服务 systemctl daemon-reload systemctl restart docker #再次登录 docker login -u admin -p Harbor12345 http://192.168.29.33
(3)上传镜像
#下载tomcat镜像 docker pull tomcat docker images #打标签 docker tag tomcat 192.168.32.15/test_items/centos:tomcat_v1 #上传到本地仓库 docker push 192.168.32.15/test_items/centos:tomcat_v1
三、维护管理Harbor
Harbor可以使用docker-compose来管理Harbor。一些有用的命令如下所示,必须在与docker-compose.yml相同的目录中运行。
修改Harbor.cfg配置文件所需选项的步骤:要更改Harbour的配置文件时,请先停止现有的Harbor实例并更新Harbor.cfg;然后运行prepare脚本来填充配置;最后重新创建并启动Harbour的实例。
1、停止现有的 Harbor 实例
cd /usr/local/harbor/ docker-compose down -v
2、修改配置文件 Harbor.cfg
cd /usr/local/harbor/ vim harbor.cfg
3、运行prepare脚本来填充配置
cd /usr/local/harbor/ ./prepare
4、重启服务
cd /usr/local/harbor/ docker-compose up -d
四、创建Harbor用户
1.新建用户
2、在客户端上操作,删除之前打标签的镜像
docker rmi 192.168.29.77/test_items/centos:tomcat_v1
3、测试创建的新用户能否使用
#注销登录 docker logout 192.168.29.77 #使用新创建的用户和密码登录私有仓库 docker login 192.168.29.77 Username: zhangsan Password: #输入密码 #查看镜像(没下载之前) docker images #从私有仓库下载镜像 docker pull 192.168.29.77/test_items/centos:nginx_v1 #查看镜像(下载之后) docker images
4、移除Harbor服务容器以及全部数据
移除Harbor服务容器同时保留镜像数据/数据库
1)在Harbor服务器上操作
cd /usr/local/harbor/ docker-compose down -v
(2)如需重新部署,需要移除Harbor服务容器全部数据,持久数据,如镜像。数据库等在宿主机的/data/目录下,日志在宿主机的/var/log/Harbor/目录下。
加载全部内容