注:
下面的方法是在容器內能ping通公網IP的解決方案,如果連公網IP都ping不通,那主機可能也上不了網(嘗試ping 8.8.8.8)
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網絡
pkill docker
iptables -t nat -F
ifconfig docker0 down
brctl delbr docker0
docker -d
6.直接在docker內修改/etc/hosts