添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

docker no non-localhost dns nameservers are left in resolv.conf

这个错误通常出现在 Docker 容器中,表示容器内的 DNS 解析器无法访问 DNS 服务器。

这个问题通常是由于 Docker 主机的 DNS 配置不正确导致的。你可以通过检查 /etc/resolv.conf 文件来查看 Docker 主机的 DNS 配置。

如果文件中只有一个本地 DNS 服务器(通常是 127.0.0.53 ),那么可能是由于 NetworkManager 或 systemd-resolved 在 Docker 主机上运行而导致的。在这种情况下,你可以尝试修改 /etc/docker/daemon.json 文件并添加以下内容:

"dns" : [ "8.8.8.8" , "8.8.4.4" ]

这将使用 Google 的公共 DNS 服务器作为 Docker 容器的默认 DNS 服务器。当然,你也可以将其替换为其他 DNS 服务器地址。

完成后,重启 Docker 守护进程以使更改生效:

sudo systemctl restart docker

现在你应该能够在 Docker 容器中正常解析 DNS 了。如果还有其他问题,请让我知道。

  •