windows - Docker Windows 在等待任何拉取图像命令或登录的标头时超出 Client.Timeout
问题描述
尝试docker run hello-world
在 Windows 10(无选项)上运行时,我收到此错误(我在许多线程上看到的常见错误):
Unable to find image 'hello-world:latest' locally
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).
我已经有一些早些时候(几个月前)提取的图像正在工作。但我无法提取任何新图像(例如:mongo),甚至无法提取 hello-world 图像。一直在搜索,尝试将 dns 设置为 8.8.8.8/8.8.4.4,docker configs(Docker 桌面 GUI)中的 experimental=true,但无法解决。我没想到的一件事是 docker info 中的 HTTP PROXY,因为我已经从 docker 的 GUI 甚至环境变量中删除了代理设置。
码头工人信息:
Client:
Debug Mode: false
Plugins:
scan: Docker Scan (Docker Inc., v0.3.4)
Server:
Containers: 3
Running: 2
Paused: 0
Stopped: 1
Images: 4
Server Version: 19.03.13
Storage Driver: overlay2
Backing Filesystem: extfs
Supports d_type: true
Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
Volume: local
Network: bridge host ipvlan macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 8fba4e9a7d01810a393d5d25a3621dc101981175
runc version: dc9208a3303feef5b3839f4323d9beb36df0a9dd
init version: fec3683
Security Options:
seccomp
Profile: default
Kernel Version: 5.4.39-linuxkit
Operating System: Docker Desktop
OSType: linux
Architecture: x86_64
CPUs: 2
Total Memory: 1.941GiB
Name: docker-desktop
ID: <Docker Id>
Docker Root Dir: /var/lib/docker
Debug Mode: false
HTTP Proxy: http://<ip>:port/
HTTPS Proxy: http://<ip>:port/
No Proxy: localhost,127.0.0.2,firm.com,firm.org
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
127.0.0.0/8
Live Restore Enabled: false
Product License: Community Engine
有人可以帮助如何从 docker info 中删除这些代理并允许我提取图像吗?我没有在 docker-desktop gui 里面Expose daemon on tcp://localhost:2375 without TLS
打勾。Use the WSL 2 based engine
同样在代理内部,手动设置已关闭,网络使用 8.8.8.8 的手动 dns 配置。我也无法 ping 到说请求超时的 hub.docker.com,并且尝试在 cmd 中执行 docker login 会返回相同的请求超时错误,但是 docker desktop(GUI) 显示我的用户已登录。我觉得我们是否在能够从 docker info 中删除代理,它可能会解决问题。
解决方案
推荐阅读
- php - SQL 查询返回 0 行,而 DB 中返回 2
- c# - Microsoft BOT Framework BOT 间歇性停止工作
- python - 如何使用 curl 获取 git hub 推送事件
- java - 我想做一些我不知道该怎么称呼的东西
- c# - Application Insights 将用户名添加到遥测
- php - 如何制作可靠的下拉菜单
- python - 使用 Vertica 作为元数据后端的 Airflow
- python-imaging-library - 如何使用 PIL 访问和更改颜色通道?
- javascript - 计算机视觉 API 批量读取文件以从多个 pdf 和图像中提取文本
- json - json 请求格式为 jsonld