使用docker容器时 不能访问互联网

Posted _刘文凯_

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用docker容器时 不能访问互联网相关的知识,希望对你有一定的参考价值。

在使用Dockerfile创建镜像时RUN中不能下载各种东西 pip即使换源也无法使用 apt-get update无法使用 这些是因为容器本身无法访问互联网所致

原因

因为docker 的DNS不能解析所致的
在宿主机中配置docker的DNS地址即可

解决

1、在宿主集中 查看DNS地址

> cat /etc/resolv.conf
domain mycompany
search mycompany
nameserver 8.8.8.8
nameserver 8.8.8.4

上面的nameserver就是DNS解析地址

2、配置docker的DNS

vi /etc/default/docker

加入:

DOCKER_OPTS="--dns xxx.xxx.xxx.xxx" # 根据你的dns设定

3、重启docker

systemctl restart docker 

注意:重启docker会造成容器关闭

4、重启容器

列出所有container:

docker container ls -a

再启动相应的container

docker container start 容器id

以上是关于使用docker容器时 不能访问互联网的主要内容,如果未能解决你的问题,请参考以下文章

aws-vpc 容器无法访问互联网

Docker 网络详解之使用自定义网络实现容器间通过容器名称互联

端口映射与容器互联

Docker-端口映射与容器互联

docker 容器不能联网

docker网络