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

 更新时间:2021年12月08日 11:17:47   作者:C和弦~  
这篇文章主要介绍了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。

 登陆后界面:

添加项目

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

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

相关文章

  • Docker部署FastDFS的实现方法

    Docker部署FastDFS的实现方法

    这篇文章主要介绍了Docker部署FastDFS的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-12-12
  • 一次centos Docker网桥模式无法访问宿主机Redis服务的故障排除经历

    一次centos Docker网桥模式无法访问宿主机Redis服务的故障排除经历

    这篇文章主要给大家介绍了关于一次centos Docker网桥模式无法访问宿主机Redis服务的故障排除经历,文中通过示例代码介绍的非常详细,对大家学习或者使用Docker具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-10-10
  • docker部署vue项目的实现步骤

    docker部署vue项目的实现步骤

    本文主要介绍了docker部署vue项目的实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07
  • 详解Django+Vue+Docker搭建接口测试平台实战

    详解Django+Vue+Docker搭建接口测试平台实战

    这篇文章主要介绍了详解Django+Vue+Docker搭建接口测试平台实战,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04
  • docker 安装ElasticSearch 6.x的教程详解

    docker 安装ElasticSearch 6.x的教程详解

    这篇文章主要介绍了docker 安装ElasticSearch 6.x的教程,非常不错,具有一定的参考借鉴价值 ,需要的朋友可以参考下
    2019-04-04
  • Docker部署ELK7.3.0日志收集服务最佳实践

    Docker部署ELK7.3.0日志收集服务最佳实践

    这篇文章主要介绍了Docker部署ELK7.3.0日志收集服务最佳实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-10-10
  • Docker构建Maven+Tomcat基础镜像的实现

    Docker构建Maven+Tomcat基础镜像的实现

    这篇文章主要介绍了Docker构建Maven+Tomcat基础镜像的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09
  • Docker部署nginx并修改配置文件的实现方法

    Docker部署nginx并修改配置文件的实现方法

    这篇文章主要介绍了Docker部署nginx并修改配置文件的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09
  • 教你用100 行shell实现Docker详解

    教你用100 行shell实现Docker详解

    这篇文章主要为大家介绍了教你用100 行shell实现Docker详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-02-02
  • Docker容器的使用方法简单示例

    Docker容器的使用方法简单示例

    这篇文章主要介绍了Docker容器的使用方法简单示例,包括拉取镜像、运行镜像、测试容器内的应用、检查主机端口及停止容器的操作方法,本文给大家介绍的非常详细,需要的朋友可以参考下
    2021-07-07

最新评论