遇到一个很郁闷的问题:
docker pull node:21
结果出现错误:
Error response from daemon: Get "https://registry-1.docker.io/v2/": EOF
当我检查 dockerstatus.com 时,我看到:Docker Hub 注册表:正在运行
我尝试安装 Rancher Desktop 作为替代方案,但遇到类似的错误。当我尝试运行时:
nerdctl pull node:21
我收到回复:
FATA[0006] failed to resolve reference "docker.io/library/node:21": failed to do request: Head "https://registry-1.docker.io/v2/library/node/manifests/21": EOF
我尝试使用 NordVPN 建立来自世界不同地区的连接。全部结果相同。如果我
tracert registry-1.docker.io
我得到:
$ tracert registry-1.docker.io
Tracing route to registry-1.docker.io [3.219.239.5]
over a maximum of 30 hops:
1 3 ms 3 ms 3 ms 10.5.0.1
2 3 ms 3 ms 3 ms 31.222.254.3
3 5 ms 3 ms 3 ms ae7-678.cr0-slc1.ip4.gtt.net [66.171.225.89]
4 32 ms 32 ms 46 ms ae11.cr7-dal3.ip4.gtt.net [213.200.115.26]
5 66 ms 33 ms 34 ms ip4.gtt.net [209.120.154.162]
6 32 ms 32 ms 32 ms 150.222.206.223
7 32 ms 31 ms 31 ms 15.230.48.10
8 * * * Request timed out.
9 * * * Request timed out.
10 * * * Request timed out.
11 * * * Request timed out.
12 * * * Request timed out.
看来问题肯定出在主机上
registry-1.docker.io
当我设置我的~/.docker/daemon.json
时:
{
"dns": ["8.8.8.8", "8.8.4.4"]
}
我得到了同样的结果。如果我使用
https://www.nslookup.io/domains/registry-1.docker.io/dns-records/#google
,我会看到 Google DNS 将 IPv4 解析为:54.236.113.205 - 这真是令人困惑。我已将机器 DNS 设置为 8.8.8.8,但在 tracert
中仍然得到 3.219.239.5
我简直不敢相信。我忘记了几周前遇到类似问题时,我使用 nslookup.io 查找在不同 DNS 上解析的 IPregistry-1.docker.io,并在我的计算机上手动添加了一个主机条目。更糟糕的是,我在笔记本电脑上做了同样的事情 - 两者都忘记了!哦!