Docker常见问题

容器内无DNS支持

现象:在Docker容器内ping IP可达,可是ping 域名不可达。
分析:IP可达可确认网络连通性没问题,剩下就是DNS的问题,docker官网有对该问题的说明及解决方案,详见:http://docs.docker.com/installation/ubuntulinux/#docker-and-local-dns-server-warnings ,然而在本地测试时问题依旧。宿主Host中的/etc/resolv.conf中的nameserver映射正确,在容器中查看/etc/resolv.conf发现nameserver的映射仍旧是8.8.8.8和8.8.4.4,那确定没法解析了,可是想修改这个文件却发现是readonly的。退出容器,用 docker inspect CONTAINER_ID 命令查看该容器的描述,发现以下信息: linux

"ResolvConfPath": "/var/lib/docker/containers/f6e197821d91d9a205ad70201a56d4484e28e2628cf95c0a1ecbb39a7ad1fa8f/resolv.conf"

晕,原来容器内的resolv.conf映射到了这个文件上而不是宿主Host的/etc/resolv.conf文件上,致使修改了宿主Host的/etc/resolv.conf没有生效到已经建立的容器中。  docker

解决:修改/var/lib/docker/containers/下对应容器的resolve.conf
相关文章
相关标签/搜索