最近一个项目在用 docker swarm,根据用户的要求,需要动态去设置主机的 /etc/resolv.conf 文件,加上以下内容:
search domain.local
nameserver
xxx.xxx.xxx.xxx设置后,在主机内就可以 ping 通 xxx.domain.local 这样的域名。
但这个设置对已启动的容器无效,容器内默认的 resolv.conf 文件是如下内容:
nameserver 127.0.0.11
options ndots:0
这时 ping 不通域名。
如果 docker 或主机重启后,容器内的 resolv.conf 文件会自动加上如下一行:
search domain.local
这时就可以 ping 通域名了。
因为容器比较多,不想改个文件就去重启 docker 或主机,有没有什么方法能让主机修改 resolv 文件后,对已启动的容器也立即生效?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
https://www.v2ex.com/t/652447
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.