I am using Docker Desktop on Windows with WSL 2 and trying to pull the following image:
docker pull mcr.microsoft.com/devcontainers/base:0-alpine-3.20
However, the image does not download. Running:
docker manifest inspect mcr.microsoft.com/devcontainers/base:0-alpine-3.20
returns:
failed to configure transport: error pinging v2 registry: Get "https://mcr.microsoft.com/v2/": read tcp [2603:8001:5e00:431b:8ee:de0e:d5ac:7788]:54158->[2603:1061:f:101::10]:443: wsarecv: An existing connection was forcibly closed by the remote host.
What I have checked/tried:
Docker setup:
- Running Docker Desktop 4.38.0 (latest)
- Docker Linux container mode is active (
OSType: linux
) - WSL 2 is enabled, and Docker is using it (
wsl --list --verbose
confirmsdocker-desktop
is running with version2
)
Network connectivity:
- Running
Test-NetConnection mcr.microsoft.com -Port 443
confirms that the registry is reachable (TcpTestSucceeded: True
).
- Opening https://mcr.microsoft.com/v2/ in a browser returns
{}
, meaning the registry is responding. - Other images pull successfully (
docker pull alpine:latest
works fine).
Problem persists with:
docker pull mcr.microsoft.com/devcontainers/base:alpine-3.20
docker pull --platform=linux/amd64 mcr.microsoft.com/devcontainers/base:alpine-3.20
Question:
Why does Docker fail to pull this image with wsarecv: An existing connection was forcibly closed by the remote host
? Could this be an issue with Docker Desktop’s networking stack, Microsoft Container Registry, or something else?
Any insights or workarounds would be greatly appreciated!