基于Harbor构建docker私有仓库的方法

一.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。

基于Harbor构建docker私有仓库的方法_第1张图片

 登陆后界面:

基于Harbor构建docker私有仓库的方法_第2张图片

添加项目

基于Harbor构建docker私有仓库的方法_第3张图片

 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.新建用户

基于Harbor构建docker私有仓库的方法_第4张图片

基于Harbor构建docker私有仓库的方法_第5张图片 

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/目录下。

到此这篇关于Harbor构建docker私有仓库的文章就介绍到这了,更多相关Harbor docker私有仓库内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

你可能感兴趣的:(基于Harbor构建docker私有仓库的方法)