通常我们在docker
中拉取的镜像都是在docker hub
在线存储库中获取的,这个在线存储库里的docker镜像可以由任何用户发布和使用。但是我们工作往往是在内网之中,所以记录以下怎么在内网中搭建私有的Docker镜像服务器。
我们先拉取一个 centos 镜像用作后续验证:
# docker pull centos
这里镜像服务器也以docker的方式启动。
# docker run -d -p 5000:5000 --name registry docker.io/registry
![](https://img.haomeiwen.com/i7304940/76a4776b0d97e231.png)
然后将我们刚才的镜像推送到我们的镜像服务器上:
# docker tag centos:latest 127.0.0.1:5000/pcopc/centos:latest
# docker push 127.0.0.1:5000/pcopc/centos
这个时候我们会报错:
编辑 /etc/docker/daemon.json,加入:
"insecure-registry":["192.168.48.20:5000"]
![](https://img.haomeiwen.com/i7304940/d8aaa6a1397db847.png)
然后执行:
# systemctl daemon-reload
# systemctl restart docker
浏览器访问:http://192.168.48.20:5000/v2/_catalog
![](https://img.haomeiwen.com/i7304940/020d05cb580b9803.png)
就能看到我们的镜像了。
现在,我们找另外一台节点验证能否从我们搭建的私有仓库上拉取镜像,再另一台节点上执行:
# docker pull 192.168.48.20:5000/pcopc/centos
![](https://img.haomeiwen.com/i7304940/c74e24a6d0e7f501.png)
镜像能成功pull下来。
参考资料
1、https://cloud.tencent.com/developer/article/1639614
2、https://ken.io/note/docker-private-image-server-deploy
网友评论