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

作者: adm 分类: docker 发布时间: 2022-06-23 15:56

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

注:下面的方法是在容器内能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         #清空nat表的所有链

ifconfig docker0 down    #停止docker默认网桥

brctl delbr docker0       #删除网桥

docker -d

6.直接在docker内修改/etc/hosts

如果觉得我的文章对您有用,请随意赞赏。您的支持将鼓励我继续创作!