参考资料:
Docker容器内不能联网的6种解决方案_腾讯数据架构师的博客-CSDN博客_docker容器网络不通
1. docker网络使用--net:host 模式
docker run –-net:host –name ubuntu_bash -i -t ubuntu:latest /bin/bash
2. 给docker通过参数 --dns 8.8.8.8指定dns
docker run --dns 8.8.8.8 --dns 8.8.4.4 –name ubuntu_bash -i -t ubuntu:latest /bin/bash
3. 修改docker配置
# 第一步修改service文件,添加自定义配置
EnvironmentFile=-/etc/default/docker #添加配置文件,(-代表ignore error)
参考:https://blog.csdn.net/skh2015java/article/details/82466485
#第二步 添加自定义配置文件
vim /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 systemctl restart network-manager
sudo systemctl restart docker
5. 重建docker0网络
pkill docker
iptables -t nat -F
ifconfig docker0 down
brctl delbr docker0
docker -d
6. 直接在docker内修改/etc/hosts