harbor镜像清理,harbor镜像管理

前言目前越来越多项目上容器化了,同时项目的不断更新迭代,并且镜像也作为了项目标准交付物的时候。企业存在一个私有的镜像仓库是很有必要。而Harbor在存储与分发镜

前言

如今,越来越多的项目被容器化,同时项目也在不断更新迭代,镜像也被作为标准的项目工件。企业需要一个专门的镜像仓库。 Harbor 图像存储和分发的安全性也使其适合企业使用。

什么是Harbor?

Harbor 是一个开源、可信的云原生注册表项目,用于存储、签名和扫描内容。 Harbor 通过添加用户常用的功能(例如安全性、身份和管理)来扩展开源Docker 发行版。将注册表移近构建和运行时环境可以提高图像传输效率。 Harbor 支持注册表之间的映像复制,还提供高级安全功能,例如用户管理、访问控制和活动审核。 (官方解释)

官方地址:https://goharbor.io/

官方开源代码地址:https://github.com/goharbor/harbor

官方部署文档:https://goharbor.io/docs/2.2.0/install-config/

官方文档描述了两种部署方式:在线部署和离线部署。在本文中,我们将离线部署Harbor。

一、系统环境

1.1 软件版本

软件版本

操作系统CentOS Linux 版本7.9.2009(核心)

码头工人20.10.7-ce

Docker-Compose 1.23.2

港口2.3.0

1.2 关闭防火墙和selinux

[root@harbor ~]# systemctl stopfirewalld

[root@harbor ~]# 禁用systemctl防火墙

[root@harbor ~]# setenforce 0

[root@harbor ~]# sed -i ‘s/enforcing/disabled/’ /etc/selinux/config

二、安装Docker与Docker-Compose

2.1 安装Docker

要安装Docker-ce,请参阅本文。

CentOS7引入最新的Docker ce

2.2 安装Docker-Compose

[root@harbor ~]# wget https://github.com/docker/compose/releases/download/1.23.2/docker-compose-Linux-x86_64 -o /usr/bin/docker-compose #下载可执行文件

[root@harbor ~]# chmod +x /usr/bin/docker-compose

[root@harbor ~]# docker-compose 版本

da648bec7a3e4f4d9eb72ad90db7c785~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1717761829&x-signature=rHNqTOJWwmMipfDCTAi9H5pnkAc%3D

三、安装Harbor

3.1 下载离线安装包

访问Harbor开源网站:https://github.com/goharbor/harbor

8005ad19a6eb4bf586f5546a50636733~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1717761829&x-signature=xUJjelIr2k%2BfybgybG0Leh9alNI%3D

f0f9353f08654f0c8f0fb97f5fe0bf7e~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1717761829&x-signature=3ueZdNfyB6xZuxmNAcxgPYnUyJs%3D

下载地址:https://github.com/goharbor/harbor/releases/download/v2.3.0/harbor-offline-installer-v2.3.0.tgz

3.2 解压离线包

将下载的Harbor-offline-installer-v2.3.0.tgz上传到您的服务器并解压。

[root@harbor ~]# ls [root@harbor ~]# tar zxf Harbor-offline-installer-v2.3.0.tgz -C /usr/local/[root@harbor ~]# ls /usr/local/harbor/

923ab95464fc443aa0b9146360a217e1~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1717761829&x-signature=ScoZQLHIdeKF8P%2BEjE5QIBqP1fE%3D

3.3 安装harbor

[root@harbor ~]# cd /usr/local/harbor/

[root@harbor Harbor]# cp Harbor.yml.tmpl Harbor.yml #复制模板配置文件

[root@harbor 港口]# vim Harbor.yml

hostname: reg.mydomain.com 更改为hostname: 192.168.16.75

https: 添加评论

端口: 443 添加评论

certificate: /您的/证书/路径添加评论

private_key: /your/private/key/path 添加评论

[root@harbor Harbor]# ./install.sh #运行安装脚本

运行安装脚本时,脚本会到镜像仓库中检索对应的镜像并运行。

bc6f347c0c7b4515a057442b50bec549~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1717761829&x-signature=V08P%2B4BkqcZGsG1lxtkIvEoNm7c%3D

[root@harbor Harbor]# docker ps #当脚本完成时,10个容器将在docker ps中可见并运行。

95befad3a033439eb60a39ca25c089b2~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1717761829&x-signature=Dd38VBaQRii32nBWiB1dbFsEsqc%3D

浏览器访问:

http://IP

默认账户密码:admin/Harbor12345

e967e34c51214be89822aac64542e0cd~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1717761829&x-signature=pizA4VeBAhTADd%2F6C7nEMURCrcg%3D

目前只有一个空项目

ee0d59e07b2a46c2bdf6c18fa5a58f11~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1717761829&x-signature=WkTt11pYwdvCLdGROUTi029XDJs%3D

四、Docker主机配置http连接

如果其他Docker 主机需要推送或拉取镜像,我在配置上述Harbor 时禁用了https,因为在推送或拉取镜像时,Harbor 默认不允许http 连接。因此,您需要在其他Docker 主机上进行配置更改以支持http 连接。注意:想要上传或拉取镜像到Harbor的Docker主机必须配置Harbor的私有仓库地址。

[root@node1 ~]# vim /etc/docker/daemon.json

添加:’不安全注册表’: [‘192.168.16.75’]

5f973d0d3f8d49a9b32f9191ebc0e90c~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1717761829&x-signature=GMGj7hZDh74nIsO0P88YzKC3UdY%3D

[root@node1 ~]# systemctl daemon-reload systemctl restart docker

五、harbor创建项目测试

5.1 创建项目

登录Harbor系统,创建项目。

cd327888e9f34b2582b4b0fa562063c3~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1717761829&x-signature=143eEPoQq37q%2BdWICYXe9i5M4og%3D

5.2 获取推送命令

97e5e43a5ada4982bedcb1031d4e6b4c~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1717761829&x-signature=jL8CPFFCmuF%2BPWJP6MT%2F7LgYd%2B8%3D

5.3 推送镜像

例如,我目前在node1 Docker主机上有一个定制版本的nginx镜像。接下来需要上传到端口的私有仓库。

[root@node1 ~]# docker login 192.168.16.75 # 登录私有仓库。您的帐户密码是Harbor网站(admin/Harbor12345)。

8298e34d6e5744bebddf372904b33663~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1717761829&x-signature=Qky9RovAZPowQM5QmMd5InlsxSI%3D

[root@node1 ~]# docker image ls

f8e260eb11a74213a41908e3f3279111~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1717761829&x-signature=VxORTIqeUXygBuDbkMO4yv2BV1s%3D

[root@node1 ~]# docker tag nginx:1.17 192.168.16.75/pull-test/nginx:1.17 # 给镜像打标签

476c2a58af694df5b4f7e93a8b1000da~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1717761829&x-signature=iBZWxMdSuHPYvIwdGY0V2cChIno%3D

[root@node1 ~]# docker Push 192.168.16.75/pull-test/nginx:1.17

bb9be3bd6a0a4841a8966eea5e1fc582~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1717761829&x-signature=%2Fip1%2B0CzbGTAqeUkdPvwtkUswE8%3D

5.4 harbor查看项目镜像

f7758123e0184f9891ff583e8cf72f82~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1717761829&x-signature=VvtdxTqq26KrT977et1Pk4%2FpFdQ%3D

使用相同的步骤拉取镜像。更多具体功能和配置,还请访问官方博客网站:https://goharbor.io/blog/。

原创文章,作者:小条,如若转载,请注明出处:https://www.sudun.com/ask/83149.html

(0)
小条的头像小条
上一篇 2024年5月31日 下午8:03
下一篇 2024年5月31日 下午8:04

相关推荐

  • 阿里云域名解析不了,阿里云云域名

    如何解决阿里云域名被屏蔽无法检测的问题?这是很多网站运营商面临的问题。如果您的域名被屏蔽,您将无法正常访问您的网站,这将极大地阻碍网站的运营。那么,阿里云域名被屏蔽无法检测是怎么回…

    行业资讯 2024年5月18日
    0
  • bbs备案

    网站建设和设计行业的论坛注册是人们充分交流、分享和学习的平台。顺便问一下,你知道什么是BBS归档吗?为什么需要提交BBS?如何注册BBS?另外,BBS备案需要哪些材料?本文提供了详…

    行业资讯 2024年4月10日
    0
  • 谷歌浏览器网站被拦截,网站被谷歌收录

    您是否曾经遇到过当您打开网站时,您的网站在Google 搜索引擎中找不到的情况?您是否困惑并担心您的网站为何被Google 屏蔽以及如何解决?请不要担心。本文将解开这个谜团。我们将…

    行业资讯 2024年5月8日
    0
  • 域名被挟持怎么办,域名被劫持最佳处理办法

    当您意识到您的域名已被盗用时,第一步就是保持冷静。不要恐慌。另外,不要相信劫机者的信息。这些信息可能是虚假的,并可能导致更大的损失。 2. 联系您的注册商 如果您的域名是通过注册商…

    行业资讯 2024年5月12日
    0

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注