Docker:来自守护程序的错误响应:获取https://registry-1.docker.io/v2/: net/http:请求在等待连接时被取消

yduiuuwa  于 2022-11-22  发布在  Docker
关注(0)|答案(7)|浏览(238)

从昨天开始我就不能再拉图像了。我也不能用docker login登录到docker。出现同样的错误:

Error response from daemon: Get https://registry-1.docker.io/v2/: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)

我没有使用任何代理,我的Docker容器本身运行良好。我在家里运行它,我唯一使用的反向代理是在容器中运行的,这不可能是原因。
执行于:

  • Ubuntu 18.04.4语言版本
  • Docker版本19.03.5,内部版本号633a0ea
wpx232ag

wpx232ag1#

这对我很有帮助:

sudo nano /etc/resolv.conf

将 * 名称服务器 * 设置为8.8.8.8
重新启动Docker恶魔。

sudo systemctl restart docker
ssm49v7z

ssm49v7z2#

尝试更新/etc/resolv.conf

nameserver 8.8.8.8
nameserver 8.8.4.4
1rhkuytd

1rhkuytd3#

我8.8.8.8在所有工作节点中添加了nameserver www.example.com,问题得到了解决

tjrkku2a

tjrkku2a4#

在我的例子中,它在配置代理后得到解决。我使用的是Windows Docker(有关详细信息,请参阅here中的“代理配置”部分)

gopyfrb3

gopyfrb35#

这通常发生在你在代理后面或者在公司网络上。虽然你在shell docker上本地导出代理并不理解这一点。所以解决方法是-
如果文件不存在,则创建一个文件- /etc/systemd/system/docker.service.d/http-proxy.conf

添加代理服务器详细信息如下-

[服务]
“proxy.example.com”“”“”
(请注意尾部的“/”,这一点非常重要)

  • systemctl守护程序重新加载 *
  • systemctl重新启动Docker*
fcg9iug3

fcg9iug36#

当我升级到使用CloudFlare时,我也遇到了类似的问题。为我解决这个问题的是:

  • 在Cloudflare或Google Cloud中导航到您DNS记录,
  • 删除Docker和Nexus的DNS记录,
  • 则应自动重新创建DNS记录,

瞧,问题解决了。

5t7ly7z5

5t7ly7z57#

我也曾从另一个来源遇到过这种情况:一个docker脚本试图使用一个私有的docker映像和repo,一旦我为那个容器使用了一个公共映像,一切都运行得很好。然后我就能够找出正确的权限,并解决了这个错误。

相关问题