无法在 Docker 1.10 中解析主机名

Can not resolve hostname in Docker 1.10

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

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

2 个容器通过 IP 地址相互 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 嵌入式 DNS 在 Fedora、RHEL 和 CentOS 7 上与 selinux 和 firewalld 有问题。您可以通过禁用 selinux 和 firewalld 来解决。 希望 Docker 团队能尽快解决这个问题!


更新: Docker 1.10.1 已修复此问题!它在 Fedora 23、CentOS 7 和 RHEL 7

上完美运行