如何更改正在运行的Docker容器的dns

默认的dns 8.8.8.8和8.8.4.4被所在国家的防火墙阻止,并且我不想停止该容器,因为我在其中安装了很多软件.
最佳答案
如果您想更改DNS,则可以按照与普通主机相同的方式进行,这应该可以正常工作.例如,编辑容器中的/etc/resolv.conf文件.

尽管如果将其完全阻止,我还是建议使用更永久的解决方案.

在/ etc / default / docker(在基于Debian的主机上可能是/etc/default/docker.io)中,您可以添加一行以在新容器上设置默认DNS.这条线看起来像

DOCKER_OPTS="-dns 8.8.8.8 -dns 8.8.4.4"

您只需为要解析的每个DNS服务器添加一个新的-dnsx.x.x.x.

完成此操作后,您将需要重新启动Docker进程.再次根据主机以几种方式完成此操作.对于基于Debian的主机:

 service docker.io restart

当docker运行新容器时,它将设置那些DNS服务器.

转载注明原文:如何更改正在运行的Docker容器的dns - 代码日志