搭建docker镜像私有仓库碰到的问题

之前我有过一篇博客是专门讲如何搭建docker镜像私有仓库的。《搭建docker镜像私有仓库》
最近将docker升级到1.12版本后又搭建了私有仓库。当镜像仓库的容器运行起来之后,我在其它节点上想要拉取该仓库中的镜像,遇到了如下报错:
这里写图片描述
该报错的原因在于:
docker从1.3版本以后对Registry的访问都是用的https。这是基于安全的考虑的。而我的私有仓库容器使用http协议。所以造成了这样的报错。
修复办法很简单,将该节点的docker daemon对此私有仓库的访问协议由https改为http即可。
使用命令vim /etc/docker/daemon.json
这个daemon.json中存储了docker daemon的一些配置参数,使用json写成的。
我们只需要在这里加上一句
"insecure-registries":["registry.com:5000"]
这句话的意思是此docker daemon以后在访问registry.com:5000时使用http协议而不是https协议。
如果没有daemon.json文件,那么就新建该文件且在其中写入上述的那句话。
当然,registry.com是我的镜像仓库容器所在的节点IP。你要改为你自己的IP才行。
接下来输入命令systemctl daemon-reload,该命令重载daemon配置。
输入命令systemctl restart docker重启docker。
如果这时候重启失败并报错
这里写图片描述
那么就运行命令rm -rf /var/run/docker.sock/
将docker.sock目录删除再运行systemctl restart docker
完成之后就发现我们能在该节点上拉取此镜像仓库的镜像了。

猜你喜欢

转载自blog.csdn.net/hty46565/article/details/80347016