升级后,Docker 无法连接外网

我最近在 Ubuntu 20 的 DigitalOcean 上注意到一个问题:宿主机未将域名服务器提供给 Docker。这不是防火墙的问题,因为 Ubuntu 20 默认并未启用防火墙。

要解决此问题,首先使用 cat /run/systemd/resolve/resolv.conf 查找 DigitalOcean 的域名服务器。您会看到类似以下内容:

nameserver 1.2.3.4
nameserver 9.8.7.6

接下来,使用 nano /etc/docker/daemon.json 编辑 daemon.json 文件,将上述域名服务器(以及可选的 Google DNS 8.8.8.8)配置为 Docker 可用。

{
    "dns": ["<上述的 ip1>", "<上述的 ip2>", "8.8.8.8"]
}

然后重启 Docker 并重新构建。

systemctl restart docker
/var/discourse/launcher rebuild app
3 个赞