docker使用手册(5)—— 仓库构建(下)

举报
Austin_zhai 发表于 2022/08/18 09:33:21 2022/08/18
【摘要】 目的CI / CD在目前各类互联网企业中已然成为推动软件开发行为的重要基础设施服务。同样的对于测试团队来说更是有着举足轻重的重大意义,无论是测试左移的具象化提现亦或是持续测试的顺利开展,掌握这一技能已是广大软件测试工程师的必修课。分享这一技术笔记也是希望除了自己团队以外的广大测试同学们可以有体系的学习这一技能。 接上回我们已经创建了自己的公共仓库和阿里云的私有仓库,接下来将会带大家继续创建...

目的

CI / CD在目前各类互联网企业中已然成为推动软件开发行为的重要基础设施服务。同样的对于测试团队来说更是有着举足轻重的重大意义,无论是测试左移的具象化提现亦或是持续测试的顺利开展,掌握这一技能已是广大软件测试工程师的必修课。分享这一技术笔记也是希望除了自己团队以外的广大测试同学们可以有体系的学习这一技能。



接上回

我们已经创建了自己的公共仓库和阿里云的私有仓库,接下来将会带大家继续创建更多的私有仓库。



私有仓库


Registry

我们之前使用的docker hub其实也是docker registry的一种,它是docker自带的集中存储与分发镜像服务。他也可以设置为公有和私有两种。当我们的测试环境受制于测试条件或网络条件的时候,就可以搭建公司内部的私有仓库,依托于内网的网络环境实现服务快速部署和切换的目的。


由于是自带的,我们可以直接使用docker run命令进行启动

docker run -d --name registry -p 5000:5000 registry

不指定仓库位置的话,默认会创建在/var/lib/registry下,如果需要指定仓库创建的位置,使用参数v进行创建,创建规则:-v 指定路径:默认路径

docker run -d --name registry -p 5000:5000 -v /opt/registry:/var/lib/registry registry

如果是第一次创建,docker将会自动拉取registry
在这里插入图片描述


已经可以看见创建完的仓库了
在这里插入图片描述

现在我们需要将镜像推送到私有仓库中,但如果需要让内网中同一网段的其他终端都可以往此仓库中进行推送的话就要做以下操作:

首先,确认自己的服务器内网IP(安装registry的那台),因为我们之前启动的时候已经将服务端口印射出来了,所以其他同网段内网终端在推送镜像时将推送地址(IP+端口)设置为服务器的即可。

另外docker不允许任何非https协议方式的镜像推送方式,而我们又是内网,所以要通过修改docker的配置来规避这一限制。


编辑docker的demon.json文件

vim /etc/docker/daemon.json

在改文件内添加如下内容:

“insecure-registries”: [“服务器IP:端口号”]


这里有几个注意点,服务器与端口号均为安装了registry的那台的IP和服务端口,如192.168.10.55:5000(之前启动registry的时候印射的5000),另外如果之前添加过第三方的容器镜像加速服务的,需要注意添加的格式,文本内容为json格式,所以加在前面的话别忘记在结尾添加英文逗号分隔开,加后面的话记得在前一个键值对后添加逗号分隔。


添加完后如下图,顺序随意:
在这里插入图片描述


做完以上操作之后就可以从任意一台装有docker的内网同网段终端中进行镜像的推送了。


接下来就开始对镜像进行打tag操作

docker tag mysql:5.6 192.168.10.55:5000/mysql:v1

进行镜像的推送操作

docker push 192.168.10.55:5000/mysql:v1

在这里插入图片描述


使用curl命令来进行结果查看

curl 服务器IP:端口/v2/_catalog

在这里插入图片描述
显示对应的镜像名即为正确


在其他同网段终端上输入以下命令即可进行镜像的拉取

docker pull 192.168.10.55:5000/mysql:v1

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。