Docker容器可以按主机名ping主机,但不能ping通同一网络上的其他计算机

时间:2019-07-17 13:49:53

标签: docker

尝试从Docker容器中访问本地网络上的计算机时遇到一个奇怪的问题。根据互联网上的一些帖子,我在码头工人的daemon.json文件中添加了一个dns条目(由ipconfig找到的默认网关)。

当我运行一个简单的容器时,我可以ping google.com并可以通过其主机名(例如server1轻松ping通我的主机。但是奇怪的是,我无法ping通同一网络上的其他任何计算机:例如server2server3

我确保可以从容器外部访问所有计算机,并且可以从容器内部通过其IP地址访问计算机,但主机也可以通过主机名访问。在我的Docker容器的/etc/resolv.conf中,我可以看到名称服务器条目指向我在daemon.json中的DNS条目。

更新:此外,相同的设置有时会起作用,有时甚至不起作用,即在一段时间后尝试后,我可以使docker容器通过主机名访问本地网络上的机器。现在,对此感到困惑的人可以解释一下或在Windows的docker桌面中遇到了相同的问题。以下是docker-desktop的版本

Client: Docker Engine - Community
Version:           18.09.2
API version:       1.39
Go version:        go1.10.8
Git commit:        6247962
Built:             Sun Feb 10 04:12:31 2019
OS/Arch:           windows/amd64
Experimental:      false

Server: Docker Engine - Community
Engine:
 Version:          18.09.2
 API version:      1.39 (minimum version 1.12)
 Go version:       go1.10.6
 Git commit:       6247962
 Built:            Sun Feb 10 04:13:06 2019
 OS/Arch:          linux/amd64
 Experimental:     false

0 个答案:

没有答案