第一篇连接:https://blog.csdn.net/u011837804/article/details/128311791
3、本地镜像发布到私有库
3.1、Docker Registry是什么
Registry 是一个无状态、高度可扩展的服务器端应用程序,用于存储并允许您分发 Docker 镜像。
如果学过maven 就知道maven有私服,那这个就是docker的私服
3.2、下载镜像Docker Registry
命令:docker pull registry
3.3、运行私有库Registry
相当于本地有个私有Docker hub(这个是中央厂库)
命令:
docker run -d -p 5000:5000 -v /usr/local/tool/registry/:/tmp/registry –privileged=true registry
注意:
- -d 代表 后台运行
- -p 5000:5000 标识暴露5000端口 不暴露端口怎么上传镜像值私有库呢
- -v /usr/local/tool/registry/:/tmp/registry 容器卷 就是挂载的意思 格式 -v 宿主机目录:容器目录 这个可以用来传输 文件 后续讲到容器卷的时候详解
- –privileged=true 这个建议加上,不然有可能报权限错误
实例:
3.4、curl验证私服库上有什么镜像
命令:curl -XGET http://宿主机IP:暴露端口/v2/_catalog
在3.3中我们启动了 registry 并暴露了端口5000,并且本机IP是192.168.13.61
所以我的命令就是 curl -XGET http://192.168.13.61:5000/v2/_catalog
执行结果,无镜像
3.5、从hub(中央仓库)下载centos7镜像,并安装vim生成增强版镜像
这里我直接使用import 将tar 生成新的 镜像 如果不知道导出 则看下 Docker命令详解篇
这里附上连接:https://blog.csdn.net/u011837804/article/details/128311791
3.6、更改镜像为符合私有库规范
命令:docker tag centosvim:1.0 192.168.13.61:5000/centosvim:1.0
格式:docker tag 镜像名称:TAG Host:Port/Repository:Tag
Host 为Registry 宿主机IP
3.7、修改配置文件使Docker可以拉取私有库镜像(两种方式配置完后,建议重启docker\registry)
在二、Docker 阿里云镜像加速_指尖@旋律的博客-CSDN博客 中我们介绍了配置阿里云镜像加速的方式,我们再来回顾下配置结果
配置私有库两种方式
- 在/etc/docker/daemon.json中继续配置
配置结果如下:其中 “192.168.13.61:5000” 为宿主机IP加暴露端口
注意:通过此种方式 我本地 push 失败,可能是我本地环境的问题,如果第一种不行大家试试第二种
没有配置push时报错
配置后
- 在docker.service启动服务配置文件中增加 文件存放目录:/usr/lib/systemd/system
注意:报错场景
- 没有配置
- registry 没有启动
3.8、push推送到私服库
命令: docker push 192.168.13.61:5000/centosvim:1.0
3.9、curl再次验证私服库上有什么镜像
已上传至私服
3.10、pull到本地并运行
命令:docker pull 192.168.13.61:5000/centosvim:1.0
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/84256.html