基于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容器间通信的一种方法

    详解docker容器间通信的一种方法

    本篇文章主要介绍了详解docker容器间通信的一种方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-03-03
  • Docker与Golang的巧妙结合

    Docker与Golang的巧妙结合

    这篇文章主要介绍了Docker与Golang的巧妙结合的相关资料,需要的朋友可以参考下
    2016-10-10
  • Docker在Ubuntu中的部署全流程

    Docker在Ubuntu中的部署全流程

    本文介绍在Linux操作系统Ubuntu的18.04及以上版本中,配置开源容器化平台和工具集Docker的详细方法,其中,我们以配置Docker平台的核心组件之一Docker Engine为例来详细介绍,需要的朋友可以参考下
    2024-03-03
  • Docker 使用nsenter工具进入容器的操作

    Docker 使用nsenter工具进入容器的操作

    这篇文章主要介绍了Docker 使用nsenter工具进入容器的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • 基于Docker搭建Redis一主两从三哨兵的实现

    基于Docker搭建Redis一主两从三哨兵的实现

    这篇文章主要介绍了基于Docker搭建Redis一主两从三哨兵的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09
  • 使用docker搭建gitlab并且开放到公网

    使用docker搭建gitlab并且开放到公网

    这篇文章主要介绍了使用docker搭建gitlab并且开放到公网,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-05-05
  • 使用 VPS 下载 Docker 镜像并导入到本地服务器的过程

    使用 VPS 下载 Docker 镜像并导入到本地服务器的过程

    这篇文章主要介绍了使用 VPS 下载 Docker 镜像并导入到本地服务器,通过使用 VPS 下载 Docker 镜像并将其传输到本地服务器,我们可以克服网络限制,更灵活地管理和部署 Docker 镜像,需要的朋友可以参考下
    2024-08-08
  • 使用Docker compose编排Laravel应用的方法

    使用Docker compose编排Laravel应用的方法

    本篇文章主要介绍了使用Docker compose编排Laravel应用的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-07-07
  • docker容器跨服务器的迁移的方法

    docker容器跨服务器的迁移的方法

    本篇文章主要介绍了docker容器跨服务器的迁移的方法,docker的备份方式有export和save两种,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
    2017-02-02
  • 使用docker compose快速配置一组容器服务详解

    使用docker compose快速配置一组容器服务详解

    这篇文章主要为大家介绍了使用docker- compose快速配置一组容器服务详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-11-11

最新评论