我创建了一个网络,并在网络中启动了2个容器

docker network create frontend
docker run -itd --name container1 --net frontend busybox
docker run -itd --name container2 --net frontend busybox

2个容器通过ipaddress相互ping通,但不能使用主机名。在Docker 1.9中,我可以同时使用ipaddress和主机名,但不能在Docker 1.10中使用主机名
docker exec container1 ping -c4 172.18.0.3 --> OK
docker exec container2 ping -c4 172.18.0.2 --> OK

docker exec container1 ping -c4 container2 --> FAILED
ping: bad address 'container2'

docker exec container2 ping -c4 container1 --> FAILED
ping: bad address 'container1'

我该如何解决这个问题?谢谢!

最佳答案

似乎Docker 1.10 Embedded DNS在Fedora,RHEL和CentOS 7上使用selinux和firewalld时遇到问题。您可以通过禁用selinux和firewalld来解决。
希望Docker团队能尽快解决此问题!

更新:
Docker 1.10.1解决了这个问题!它可以在Fedora 23,CentOS 7和RHEL 7上完美运行

关于docker - 在Docker 1.10中无法解析主机名,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35238690/

10-11 02:50
查看更多