当我们运行单个docker容器时,我们可以指定--dns,使用它们可以获得应用程序所需的其他dns条目。
例如:docker run -dit --dns 172.17.0.1 imageid
在这种情况下,dnsmasq在172.17.0.1上运行
我们目前正在转向docker swarms以获得自动扩展和其他功能,但是没有选项指定--dns,是否有任何简单的解决方法?
答案 0 :(得分:0)
据我所知,无论您是使用docker service create还是使用docker remote API,都无法直接向您的服务提供dns。
但是,docker守护程序上有一个选项,允许您修改用于守护程序启动的容器的dns服务器。因此,如果所有容器的dns服务器都相同,我建议您编辑docker守护程序选项以添加--dns
选项,以指定您的服务器
如果只有部分服务需要使用特定的DNS服务器,我建议您设置一个节点的守护程序选项以使用此dns并使用--contraint
选项docker service create