排除Docker容器networking故障的最佳方法

我在OSX上使用boot2docker来使用Docker。 我发现,我创build的容器不时连接到诸如archive.ubuntu.comping google.com类的东西。 我可以ping 8.8.8.8

排查集装箱联网的最佳方法是什么?

以交互模式运行您的容器:

 docker run -t -i ubuntu:14.04 /bin/bash 

如有必要,安装ping工具:

 apt-get install iputils-ping 

比你可以检查docker集装箱内的ping:

 ping 8.8.8.8 

这是因为DNS发生的原因。 如果您更换networking,您的b2d虚拟机将具有旧的DNS服务器。 重新启动b2d,你应该没事的。

Go-lang的parsing器还有一个bug,除非你重新启动应用程序,否则不会读取新的DNS服务器。所以需要push或pull的docker相关命令也可能会失败。