Hey I been using Docker Desktop on Windows for a while. From time to time I been not able to pull images but it was very rarely the case. Seems like it got worse with time.
Now I am really struggeling to get any successful pull. I get an error like this :
failed to copy: httpReadSeeker: failed open: failed to do request: Get "https://production.cloudflare.docker.com/registry-v2/docker/registry/v2/blobs/sha256/f7/f780c3d8a4bff0d7b0a8a64b97cd41a7c1ea3c6e4294eb7c7907c124ff5f1586/data?expires=1741115198&signature=uK8YRbwPKt89TtH2ufEPh%2BxeM9k%3D&version=2": EOF
PS C:\windows\system32> docker pull szaimen/aio-borgbackup-viewer:v1
v1: Pulling from szaimen/aio-borgbackup-viewer
failed to copy: httpReadSeeker: failed open: failed to do request: Get "https://production.cloudflare.docker.com/registry-v2/docker/registry/v2/blobs/sha256/32/3248122c9b277fcef23f8906b8e45b099bad9ee0b594196d4534cbac97eeb39b/data?expires=1741565963&signature=H2GiUBElLjUOipuLndEfyFKvW7M%3D&version=2": EOF
PS C:\windows\system32>
This seems not to be a problem on my side. First I tried on a new notebook with the same error. Then I used mobile hotspot and it went fine. Still no clue I asked my girlfried and she said (no clue at all) maybe IP related. Installed nordvpn and tried again. Everything is fine now. No idea what this is… like docker or cloudflare blocked my ip.
It could be anything between the Docker daemon in Docker Desktop’s VM and Docker Hub. If mobile hotspot or VPN helps, it probably cannot be in Docker Desktop. It couldn’t be a local router either, because that couldn’t be solved by NordVPN. If your IP is blocked somewhere, I would assume everything failing without successfully downloading some layers. Maybe it could be your internet provider limiting traffic or certain requests or anything between the gateway of the ISP and Docker Hub. The latter is more likely as limiting traffic would affect VPN too, unless it depends on the type of package which cannot be checked through a VPN.
There is an allowlist of hosts that Docker Desktop has to access. Part of the list would apply to Docker Daemon as well. If you want, you can try to use traceroute or tracepath on these domains:
I used the first domain since I dont use paid plans or anonymous pulls. Here are the tracert outputs from one run without NordVPN and the second one with it. I don’t really know whats happening there.
PS C:\windows\system32> tracert registry-1.docker.io
Routenverfolgung zu registry-1.docker.io [98.85.153.80]
über maximal 30 Hops:
1 1 ms 1 ms 1 ms fritz.box [192.168.178.1]
2 24 ms 21 ms 22 ms xxxxx.dynamic.kabel-deutschland.de [11.11.11.11]
3 27 ms 22 ms 22 ms xxxxx.static.kabel-deutschland.de [11.11.11.11]
4 28 ms 28 ms 24 ms 145.254.3.74
5 24 ms 27 ms 25 ms ae9-100-xcr1.hac.cw.net [195.89.99.1]
6 26 ms 32 ms 25 ms ae9-100-xcr1.hac.cw.net [195.89.99.1]
7 131 ms 128 ms 131 ms ae9.pcr1.aet.cw.net [195.2.22.246]
8 117 ms 111 ms 116 ms ae11-xcr1.slo.cw.net [195.2.3.118]
9 111 ms 102 ms 107 ms ae2-xcr1.nyh.cw.net [195.2.28.169]
10 124 ms 123 ms 121 ms ae18-xcr1.asb.cw.net [195.2.30.25]
11 115 ms 111 ms 119 ms 99.83.67.204
12 * * * Zeitüberschreitung der Anforderung.
13 * * * Zeitüberschreitung der Anforderung.
14 * * * Zeitüberschreitung der Anforderung.
15 * * * Zeitüberschreitung der Anforderung.
16 * * * Zeitüberschreitung der Anforderung.
17 * * * Zeitüberschreitung der Anforderung.
18 * * * Zeitüberschreitung der Anforderung.
19 * * * Zeitüberschreitung der Anforderung.
20 * * * Zeitüberschreitung der Anforderung.
21 * * * Zeitüberschreitung der Anforderung.
22 * * * Zeitüberschreitung der Anforderung.
23 * * * Zeitüberschreitung der Anforderung.
24 * * * Zeitüberschreitung der Anforderung.
25 * * * Zeitüberschreitung der Anforderung.
26 * * * Zeitüberschreitung der Anforderung.
27 * * * Zeitüberschreitung der Anforderung.
28 * * * Zeitüberschreitung der Anforderung.
29 * * * Zeitüberschreitung der Anforderung.
30 * * * Zeitüberschreitung der Anforderung.
Ablaufverfolgung beendet.
PS C:\windows\system32> tracert registry-1.docker.io
Routenverfolgung zu registry-1.docker.io [98.85.153.80]
über maximal 30 Hops:
1 43 ms 45 ms 43 ms 10.5.0.1
2 * * * Zeitüberschreitung der Anforderung.
3 * * * Zeitüberschreitung der Anforderung.
4 * * * Zeitüberschreitung der Anforderung.
5 * * * Zeitüberschreitung der Anforderung.
6 * * * Zeitüberschreitung der Anforderung.
7 * * * Zeitüberschreitung der Anforderung.
8 * * * Zeitüberschreitung der Anforderung.
9 * * * Zeitüberschreitung der Anforderung.
10 * * * Zeitüberschreitung der Anforderung.
11 * * * Zeitüberschreitung der Anforderung.
12 * * * Zeitüberschreitung der Anforderung.
13 * * * Zeitüberschreitung der Anforderung.
14 * * * Zeitüberschreitung der Anforderung.
15 * * * Zeitüberschreitung der Anforderung.
16 * * * Zeitüberschreitung der Anforderung.
17 * * * Zeitüberschreitung der Anforderung.
18 * * * Zeitüberschreitung der Anforderung.
19 * * * Zeitüberschreitung der Anforderung.
20 * * * Zeitüberschreitung der Anforderung.
21 * * * Zeitüberschreitung der Anforderung.
22 * * * Zeitüberschreitung der Anforderung.
23 * * * Zeitüberschreitung der Anforderung.
24 * * * Zeitüberschreitung der Anforderung.
25 * * * Zeitüberschreitung der Anforderung.
26 * * * Zeitüberschreitung der Anforderung.
27 * * * Zeitüberschreitung der Anforderung.
28 * * * Zeitüberschreitung der Anforderung.
29 * * * Zeitüberschreitung der Anforderung.
30 * * * Zeitüberschreitung der Anforderung.
Ablaufverfolgung beendet.