Docker容器內(nèi)不能聯(lián)網(wǎng)的6種解決方案
注:下面的方法是在容器內(nèi)能ping通公網(wǎng)IP的解決方案,如果連公網(wǎng)IP都ping不通,那主機可能也上不了網(wǎng)(嘗試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網(wǎng)絡(luò)
pkill docker #終止進程
iptables -t nat -F #清空nat表的所有鏈
ifconfig docker0 down #停止docker默認網(wǎng)橋
brctl delbr docker0 #刪除網(wǎng)橋
docker -d
6.直接在docker內(nèi)修改/etc/hosts
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接