我创建了一个网络,并在网络中启动了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/