「开源摘星计划」华为云SWR镜像同步到Harbor

Posted 键客李大白

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了「开源摘星计划」华为云SWR镜像同步到Harbor相关的知识,希望对你有一定的参考价值。


在SWR创建组织(Projects)


华为容器镜像服务(SWR)中的"组织"概念和Harbor中的"项目"是一样的,不同的"组织"用来存放不同应用的镜像。

操作:

【容器镜像服务】—【组织管理】—【创建组织】,然后填写组织名称,点击【确定】即可完成组织的创建。

「开源摘星计划」华为云SWR镜像同步到Harbor_运维


命令行登录华为镜像仓库


在【容器镜像服务】—【总览】—【登录指令】处获取命令行登录华为SWR镜像仓库的命令。

登录指令有效期为24小时

「开源摘星计划」华为云SWR镜像同步到Harbor_Harbor_02

「开源摘星计划」华为云SWR镜像同步到Harbor_云原生_03

复制【登录指令】,然后在命令行粘贴,回车登录。

出现“Login Succeeded”则表示登录成功!

「开源摘星计划」华为云SWR镜像同步到Harbor_华为云_04

上传镜像到SWR



方式一、页面上传​

在【容器镜像服务】-【我的镜像】-【页面上传】处将镜像包上传

组织处填写刚才创建的组织名称即可,可用批量上传。

「开源摘星计划」华为云SWR镜像同步到Harbor_运维_05



方式二、命令行上传​

操作步骤:

Step 1. 以root用户登录容器引擎所在的虚拟机

Step 2. 获取登录访问指令,并复制到节点上执行

生成临时登录指令或查看如何获取长期有效登录指令。

Step 3. 上传镜像

$ sudo docker tag [镜像名称:版本名称] swr.cn-north-4.myhuaweicloud.com/组织名称/镜像名称:版本名称

$ sudo docker push swr.cn-north-4.myhuaweicloud.com/组织名称/镜像名称:版本名称

下载镜像并上传到SWR(测试)

[root@lidabai harbor]# docker pull nginx:1.22
[root@lidabai harbor]# docker pull traefik:v2.8.1
[root@lidabai harbor]# docker tag nginx:1.22 swr.cn-north-4.myhuaweicloud.com/lidabai-damo/nginx:1.22
[root@lidabai harbor]# docker push swr.cn-north-4.myhuaweicloud.com/lidabai-damo/nginx:1.22
[root@lidabai harbor]# docker tag traefik:v2.8.1 swr.cn-north-4.myhuaweicloud.com/lidabai-damo/traefik:v2.8.1
[root@lidabai harbor]# docker push swr.cn-north-4.myhuaweicloud.com/lidabai-damo/traefik:v2.8.1

「开源摘星计划」华为云SWR镜像同步到Harbor_运维_06

然后在【组织管理】—【详情】-【镜像】可以查看到上传的镜像。

「开源摘星计划」华为云SWR镜像同步到Harbor_华为云_07

Harbor创建目标规则


在Harbor UI管理界面进行以下操作来创建目标规则。

【系统管理】—【仓库管理】-【新建目标】:

「开源摘星计划」华为云SWR镜像同步到Harbor_云原生_08

然后填写相关信息:

 提供者:Huawei SWR     

目标名:swr-test #自定义,填写任意即可

目标URL:上传镜像时提示的地址和组织名称,也就是将SWR指定组织的镜像同步到Harbor指定的项目中,根据自己的实际信息填写;

访问ID:在命令行登录SWR的登录指令中,-u参数后的字符串就是访问ID(用户名);

访问密码:在命令行登录SWR的登录指令中,-P参数后的字符串就是访问密码(24小时有效期);

「开源摘星计划」华为云SWR镜像同步到Harbor_Harbor_09

补充:去掉【验证远程证书】

然后点击【测试连接】按钮,出现【测试连接成功】则说明信息填写正常,如果失败则检查填写的参数是否有误。

然后点击【确定】

「开源摘星计划」华为云SWR镜像同步到Harbor_运维_10

Harbor创建复制规则


前面创建了一个目标规则来指定了华为SWR镜像仓库和Harbor镜像仓库的连接关系,现在则需要将SWR中组织中的镜像同步到Harbor中。

操作:【系统管理】-【复制管理】-【新建规则】

「开源摘星计划」华为云SWR镜像同步到Harbor_华为云_11

然后填写相关参数:

  • 名称:自定义名称​
  • 复制模式:pull-based表示Harbor从SWR pull镜像;Push-based则是将本地的镜像传到SWR上。​
  • 源仓库:刚才创建的目标规则中,SWR的项目URL​
  • 资源过滤器:都空白(表示SWR中指定组织中的所有镜像都同步到Harbor),可以过滤哪些镜像不用同步。​
  • 目标:不填,指定目标名称空间,不填则表示资源会放到和源(SWR)相同的名称空间下(组织名称)​
  • 触发模式:手动,有手动和定时两种​
  • 带宽:-1 (不限制传输速度)​

「开源摘星计划」华为云SWR镜像同步到Harbor_Harbor_12

「开源摘星计划」华为云SWR镜像同步到Harbor_Harbor_13

「开源摘星计划」华为云SWR镜像同步到Harbor_运维_14

然后点击【保存】

「开源摘星计划」华为云SWR镜像同步到Harbor_华为云_15

然后选择刚才新建好的【复制规则】,然后点击【复制】按钮进行复制(同步)。

「开源摘星计划」华为云SWR镜像同步到Harbor_华为云_16

这里出现了个报错:

「开源摘星计划」华为云SWR镜像同步到Harbor_运维_17

failed to fetch artifacts Gethttp://swr.cn-north4 myhuaweicloud . com/lidabai-damo/dockyard/v2/repositones ? filter-centerself diatco 124.70.122.75:80 connect connecton refused

「开源摘星计划」华为云SWR镜像同步到Harbor_Harbor_18

failed to fetch artifacts : Gethttp://swr.cn-north-4 . myhuaweicloud . com / lidadamo / dockyard / v2 / repositories ? filter = center self " diatcp 124.70.122.75:80 connect : connection refused

「开源摘星计划」华为云SWR镜像同步到Harbor_华为云_19

【原因】华为的域名连接不上


推荐阅读

Harbor高可用集群设计及部署(实操+视频),基于离线安装方式

​阿里云镜像迁移到Harbor详细的操作步骤​

​shell中获取Harbor中所有的镜像列表​

​担心Harbor数据丢失?谈谈Harbor的备份和恢复方法。​

​Prometheus监控Harbor实战(全网首发)​

​Harbor版本升级(图文并茂)​

​kubernetes使用NFS作为存储的操作步骤(保姆式分享)​

​Harbor高可用设计,使用外部数据库-详细到爆的操作步骤​

「开源摘星计划」华为云SWR镜像同步到Harbor_运维_20


以上是关于「开源摘星计划」华为云SWR镜像同步到Harbor的主要内容,如果未能解决你的问题,请参考以下文章

「开源摘星计划」优麒麟系统(国产)部署Harbor私有镜像仓库服务

「开源摘星计划」Loki实现Harbor日志的高效管理

「开源摘星计划」Harbor日志轮转:从日志优化Harbor性能!

「开源摘星计划」Jaeger实现Harbor的链路监控

镜像仓库同步

阿里云镜像迁移到Harbor详细的操作步骤