Docker容器内不能联网的 6 种解决方案

注:下面的方法是在容器内能 ping 通公网 IP 的解决方案,如果连公网 IP 都 ping 不通,那主机可能也上不了网(尝试ping 8.8.8.8)。

Docker容器内不能联网的 6 种解决方案

1. 使用 –net:host 选项

sudo docker run –net:host –name ubuntu_bash -i -t ubuntu:latest /bin/bash 

2. 使用 –dns 选项

sudo docker run –dns 8.8.8.8–dns 8.8.4.4–name ubuntu_bash -i -t ubuntu:latest /bin/bash 

3. 改dns server

vi /etc/default/docker 
# 去掉“docker_OPTS=”–dns 8.8.8.8 –dns 8.8.4.4″”前的#号 

4. 不用dnsmasq

vi /etc/ 
NetworkManager 
/ 
NetworkManager 
.conf 
# 在dns=dnsmasq前加个#号注释掉,然后 
 
sudo restart network-manager 
sudo restart docker 

5. 重建docker0网络