为什么推送Docker镜像失败,"拨打tcp:查找cdn-registry-1.docker.io on 192.168.1.1:53:read udp 192.168.1.1:53:i/o timeout"?

thr*_*eez 8 macos docker boot2docker dockerhub docker-registry

我正在推动Docker Hub上的私有docker存储库,我不断收到此错误:

2726b5968341: Image successfully pushed 
2fd0731064ec: Image successfully pushed 
49328a658a81: Image successfully pushed 
6beafaa9c78d: Image successfully pushed 
bb8b822852f4: Image successfully pushed 
6a0d258340b1: Pushing 
FATA[0457] Failed to upload metadata: Put https://cdn-registry-1.docker.io/v1/images/6a0d258340b180fd569ec687653d805ebb70e77c1943ca6cfc9d296392ad79ee/json: dial tcp: lookup cdn-registry-1.docker.io on 192.168.1.1:53: read udp 192.168.1.1:53: i/o timeout 
Run Code Online (Sandbox Code Playgroud)

我在Mac OS上运行Docker boot2docker.在运行push命令7次以上它最终成功完成后,但我想我还是会问.

有谁看过这个吗?关于如何解决的提示?

mlg*_*mlg 10

Interwebs表示,这是您网箱上的网络问题; 可能与DNS有关.我尝试了很多东西,但重新启动boot2docker修复了它.

如果您在重新启动时遇到此问题:

An error occurred trying to connect: Post https://192.168.59.103:2376/v1.19/images/create?fromImage=...: x509: certificate is valid for 127.0.0.1, 10.0.2.15, not 192.168.59.103
Run Code Online (Sandbox Code Playgroud)

然后尝试重新安装boot2docker; 请注意,您丢失了所有本地图像

boot2docker stop
boot2docker delete
boot2docker init
boot2docker start
Run Code Online (Sandbox Code Playgroud)

因为https://github.com/boot2docker/boot2docker/issues/968

祝好运

更新:

不用boot2docker delete了!修复程序在后一版本的boot2docker(1.7.1)中合并.

你现在boot2docker upgrade可以解决这个问题.

或者,如果这对您来说是个问题,您可以简单地在boot2docker VM中弹出docker,如下所示:

boot2docker ssh 'sudo /etc/init.d/docker restart’

  • [Docker Toolbox](https://www.docker.com/toolbox)取代了boot2docker,但你仍然需要经常使用"docker-machine restart default". (2认同)