* Executing task: DOCKER_HOST=192.168.188.24:2375 LOCAL_REGISTRY=192.168.188.20 TAG=arm64 GPU=-am62 DEBUG_SSH_PORT=2231 DEBUG_PORT1=2232 DEBUG_PORT2= DEBUG_PORT3= docker compose pull slinttest-debug
WARN[0000] The "DOCKER_LOGIN" variable is not set. Defaulting to a blank string.
[+] Pulling 1/1
! slinttest-debug Warning Get "https://192.168.188.20:5002/v2/": net/http: request canceled while waiting... 15.1s
WARNING: Some service image(s) must be built from source by running:
docker compose build slinttest-debug
1 error occurred:
* Error response from daemon: Get "https://192.168.188.20:5002/v2/": net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)
* The terminal process "/bin/bash '-c', 'DOCKER_HOST=192.168.188.24:2375 LOCAL_REGISTRY=192.168.188.20 TAG=arm64 GPU=-am62 DEBUG_SSH_PORT=2231 DEBUG_PORT1=2232 DEBUG_PORT2= DEBUG_PORT3= docker compose pull slinttest-debug'" terminated with exit code: 1.
I’m on Windows using the Torizon WSL. I can access the local registry from my windows install by visiting either http://192.168.188.20:5002/v2/ or http://localhost:5002/v2/.
I might make mistakes. Our support team will step in if needed. If I answered your question, please tick the “Solution” checkbox. For follow-up questions to me, please use @ToradexAI in your post.
Did you like my answer?
Hello! Thank you for providing detailed information about your setup and issue.
This appears to be a network connectivity or Docker configuration issue between your Torizon WSL2 environment and your local Docker registry when accessed via the external IP address. Here are step-by-step recommendations to address this:
1. Local Docker Registry Access – Insecure Registry
Docker, by default, blocks communication with registries over HTTP unless they are explicitly marked as insecure.
Since your registry responds on HTTP (not HTTPS) at http://192.168.188.20:5002, you must configure the Docker daemon inside the Torizon WSL2 to treat 192.168.188.20:5002 as an insecure registry.
Docker Insecure Registry Configuration
Create or modify /etc/docker/daemon.json in your WSL2 environment:
After editing, restart the Docker daemon within WSL:
sudo service docker restart
More details:
2. WSL2 Networking and Windows Firewall
WSL2 uses a virtual network, and sometimes access via the VM’s external interface (your 192.168.188.20 address) can be blocked by Windows Defender Firewall or not properly routed.
Since localhost works but the IP does not, your registry may be listening only on localhost within Windows, not all interfaces.
Ensure Registry is Listening on All Interfaces:
When running your registry, use -p 5002:5002 and set the registry config or Docker command so it binds to 0.0.0.0 rather than 127.0.0.1.
Example:
Ensure your Windows Firewall allows inbound connections on port 5002.
3. Docker Engine Version
Only use a single Docker Engine inside WSL2. Do not attempt to use Docker Desktop and the WSL Docker Engine simultaneously, as this can lead to networking conflicts.
could you please check from the device side? Because the issue is not from inside the Windows, from WSL is normal you do not have the registry under the Windows IP, so we use localhost. From outside the WSL that you should always use the Windows IP to access the local registry. So, from the device side:
curl http://192.168.188.20:5002/v2/
What’s the behavior?
If it hangs, does not respond, or times out, probably you have some firewall issue that is blocking the connection between Windows and the outside, like the device.
In this case, please could you report the return from the follow command: