基于Harbor构建docker私有仓库的方法是什么,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
一.harbor简介
基于镜像的复制策略;支持LDAP/AD域,通过VPN连接域使用;图像删除和垃圾收集;图像UI,方便;审计,此功能使用较少,一般企业中用ELK收集、分析日志;RESTful API
一.harbor构建私有仓库
上传dock-compose,并设置权限
[root@harbor ~]# cd /usr/local/bin/[root@harbor bin]# rz -e[root@harbor bin]# lsdocker-compose[root@harbor bin]# chmod +x docker-compose
安装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
配置Harbo参数文件
[root@harbor local]# vim /usr/local/harbor/harbor.cfg #修改第五行hostname = 192.168.29.77
启动Harbor
[root@harbor local]# cd /usr/local/harbor/[root@harbor harbor]# ls[root@harbor harbor]# sh install.sh
查看Harbor启动镜像和容器
(1)查看镜像
docker images
(2)检查服务容器是否开启
cd /usr/local/harbor/docker-compose ps
在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_v1docker images
(4)上传镜像到Harbor
docker push 127.0.0.1/test_items/centos:nginx_v1
在客户端上,上传镜像
上述操作都是在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-reloadsystemctl restart docker #再次登录docker login -u admin -p Harbor12345 http://192.168.29.33
(3)上传镜像
#下载tomcat镜像docker pull tomcatdocker 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的实例。
停止现有的 Harbor 实例
cd /usr/local/harbor/docker-compose down -v
修改配置文件 Harbor.cfg
cd /usr/local/harbor/vim harbor.cfg
运行prepare脚本来填充配置
cd /usr/local/harbor/./prepare
重启服务
cd /usr/local/harbor/docker-compose up -d
四、创建Harbor用户
新建用户
在客户端上操作,删除之前打标签的镜像
docker rmi 192.168.29.77/test_items/centos:tomcat_v1
测试创建的新用户能否使用
#注销登录docker logout 192.168.29.77#使用新创建的用户和密码登录私有仓库docker login 192.168.29.77Username: zhangsanPassword: #输入密码#查看镜像(没下载之前)docker images#从私有仓库下载镜像docker pull 192.168.29.77/test_items/centos:nginx_v1#查看镜像(下载之后)docker images
移除Harbor服务容器以及全部数据
移除Harbor服务容器同时保留镜像数据/数据库
1)在Harbor服务器上操作
cd /usr/local/harbor/docker-compose down -v
(2)如需重新部署,需要移除Harbor服务容器全部数据,持久数据,如镜像。数据库等在宿主机的/data/目录下,日志在宿主机的/var/log/Harbor/目录下。
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注编程网行业资讯频道,感谢您对编程网的支持。