Docker 拉错
Docker pull error
我的 Docker 有问题。当我 运行 docker pull 命令时,出现致命错误。
运行: docker pull golang
获取: Pulling repository golang
FATA[0000] Get https://index.docker.io/v1/repositories/library/golang/images: dial tcp: lookup index.docker.io on [192.168.3.50]:53: server misbehaving
即使我尝试拉取不同的图像,也会出现此问题。
我该如何解决这个问题?
我的 docker 版本是 1.4.1
您的 DNS 服务器无法查找 docker-注册域 (index.docker.io)。请重新检查本地 DNS 服务器中的 DNS 记录或将其替换为 public 服务器,例如 8.8.8.8
.
我在执行 docker build .
时遇到了这个问题,并且得到
Error while pulling image:
Get https://index.docker.io/v1/repositories/library/debian/images:
dial tcp: lookup index.docker.io on 75.75.76.76:53: server misbehaving
和
Error while pulling image:
Get https://index.docker.io/v1/repositories/library/debian/images:
dial tcp: lookup index.docker.io: no such host
重新启动 docker 使用的虚拟机解决了我的问题:
docker-machine restart default && eval "$(docker-machine env default)"
我在 OSX 和 Docker 稳定版 v1.13.0 上看到了类似的问题。该问题是间歇性的,在办公室的多台 OSX 笔记本电脑上出现。当问题出现时,这是错误消息:
error pulling image configuration:
Get https://prod-ap-southeast-2-starport-layer-bucket.s3-REGION.amazonaws.com/XXX:
dial tcp: lookup prod-REGION-starport-layer-bucket.s3-ap-southeast-2.amazonaws.com on 192.168.xxx.xxx:53:
no such host
我们已经能够通过 运行以下命令可靠地修复它:
docker run --rm -v /etc/resolv.conf:/rtemp debian:8 bash -c 'echo "nameserver 8.8.8.8" > /rtemp'
请注意,每次 docker 客户端启动时,此命令都需要 运行。该命令正在更改 docker 引擎 DNS 设置以停止通过 docker 客户端代理(并因此使用您的主机 DNS 设置),而是通过 8.8 的 Google DNS 服务器解析 DNS 查询。 8.8.
我认为根本原因是亚马逊 URL 的 DNS 响应的负载大小发生了变化,当它大于 512 字节时,Docker 客户端 DNS 代理无法处理响应.
我相信根本原因已在这个公开的 docker 问题中进行了讨论,但不能确定:https://github.com/docker/docker/issues/18842
是的,我解决了我的问题!!
"I added a line nameserver 8.8.8.8
into /etc/resolv.conf
"
我刚刚评论了这一行 nameserver fe80::1%wlo1
尝试以下命令
$ docker-machine ssh
$ sudo su
$ echo "nameserver 8.8.8.8" > /etc/resolv.conf
我的 Docker 有问题。当我 运行 docker pull 命令时,出现致命错误。
运行: docker pull golang
获取: Pulling repository golang
FATA[0000] Get https://index.docker.io/v1/repositories/library/golang/images: dial tcp: lookup index.docker.io on [192.168.3.50]:53: server misbehaving
即使我尝试拉取不同的图像,也会出现此问题。
我该如何解决这个问题?
我的 docker 版本是 1.4.1
您的 DNS 服务器无法查找 docker-注册域 (index.docker.io)。请重新检查本地 DNS 服务器中的 DNS 记录或将其替换为 public 服务器,例如 8.8.8.8
.
我在执行 docker build .
时遇到了这个问题,并且得到
Error while pulling image:
Get https://index.docker.io/v1/repositories/library/debian/images:
dial tcp: lookup index.docker.io on 75.75.76.76:53: server misbehaving
和
Error while pulling image:
Get https://index.docker.io/v1/repositories/library/debian/images:
dial tcp: lookup index.docker.io: no such host
重新启动 docker 使用的虚拟机解决了我的问题:
docker-machine restart default && eval "$(docker-machine env default)"
我在 OSX 和 Docker 稳定版 v1.13.0 上看到了类似的问题。该问题是间歇性的,在办公室的多台 OSX 笔记本电脑上出现。当问题出现时,这是错误消息:
error pulling image configuration:
Get https://prod-ap-southeast-2-starport-layer-bucket.s3-REGION.amazonaws.com/XXX:
dial tcp: lookup prod-REGION-starport-layer-bucket.s3-ap-southeast-2.amazonaws.com on 192.168.xxx.xxx:53:
no such host
我们已经能够通过 运行以下命令可靠地修复它:
docker run --rm -v /etc/resolv.conf:/rtemp debian:8 bash -c 'echo "nameserver 8.8.8.8" > /rtemp'
请注意,每次 docker 客户端启动时,此命令都需要 运行。该命令正在更改 docker 引擎 DNS 设置以停止通过 docker 客户端代理(并因此使用您的主机 DNS 设置),而是通过 8.8 的 Google DNS 服务器解析 DNS 查询。 8.8.
我认为根本原因是亚马逊 URL 的 DNS 响应的负载大小发生了变化,当它大于 512 字节时,Docker 客户端 DNS 代理无法处理响应.
我相信根本原因已在这个公开的 docker 问题中进行了讨论,但不能确定:https://github.com/docker/docker/issues/18842
是的,我解决了我的问题!!
"I added a line nameserver 8.8.8.8
into /etc/resolv.conf
"
我刚刚评论了这一行 nameserver fe80::1%wlo1
尝试以下命令
$ docker-machine ssh
$ sudo su
$ echo "nameserver 8.8.8.8" > /etc/resolv.conf