概述:
看到这里可能会有人觉得以为不是有类似dockerhub,啊里云等公共镜像仓库吗,为啥还有构建私有仓库,因为在企业开发当中有些会涉及机密问题所以很有必要构建一个私服仓库提供企业项目的开发团队共同使用,我们可以用docker register官方提供的工具搭建私有镜像仓库
一.搭建步骤
1.下载docker registry镜像,如果本地没有可以使用docker pull registry命令进行下载
2.运行registry镜像相当于本地拥有一个dockerhub仓库,具体的命令解释可参考上一篇的docker基础命令详解文章,这里我就不解释了
docker run -d -p 5000:5000 -v /root/hyx/myregistry/:/tmp/registry --privileged=true registry
3.运行registry之后,我们可以查看一下刚才搭建的私服仓库中有什么镜像。
curl -XGET http://192.168.79.129:5000/v2/_catalog
//【虚拟机】ip就是仓库所在机器的ip,端口5000就是上面运行registry镜像容器暴露的端口
4.尝试将本地镜像发布到registry
本次我们选择mydockerpro:1.1这个镜像进行演示发布,在将本地镜像发布到registry之前,我们先把镜像修改为符合私服仓库的规范Host:Port/Repository:Tag,修改命令如下
docker tag mydockerpro:1.1 192.168.79.129:5000/mydockerpro:1.1
5.改为/etc/docker/daemon.json配置文件,加入如下内容使其支持http,因为docker默认不支持http方式推送镜像,我们可以加入改配置让docker取消这个限制,配置完然后重启docker服务。
"insecure-registries":["192.168.79.129:5000"]
6.推送本地镜像mydockerpro到私服仓库当中
docker push 192.168.79.129:5000/mydockerpro:1.1
//格式
docker push 镜像名称:Tag
7.使用curl -XGET http://192.168.79.129:5000/v2/_catalog查看私服仓库是否有我们刚才推送的mydockerpro镜像
8.删除之前留下的mydockerpro镜像然后重新去私服仓库pull ,看下是否可以pull成功
9.尝试运行刚从私服仓库pull的镜像
二.总结
经过漫长的九个步骤搭建,私服仓库算是基本完成了,从私服仓库的搭建,推送本地镜像到私服仓库,从私服仓库拉取镜像,总体而言搭建起来还是比较简单!!!