DockerDesktop logs me out right after starting and it is impossible to login again
Description
After opening, DockerDesktop keeps logging me out and removing valid locally stored credentials. Once logged out, I cannot login again at all while DockerDesktop is running, no matter which method I use (from app or console). Subsequent logins fail all the time with following errors (both are happening interchangeably):
Error response from daemon: Get "https://registry-1.docker.io/v2/": context deadline exceeded or
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).
If I shutdown DockerDesktop, I can again successfully login from console, but the next opening of DockerDesktop will log me out and remove credentials again.
This makes DockerDesktop completely unusable.
Reproduce
Initial state: DockerDesktop is not running.
- Open console
- Execute
docker login -u my-username, provide password - Command executes successfully (message:
Login Succeeded) - Verify if credentials are stored in credential manager:
docker-credential-desktop list - Output:
{"https://index.docker.io/v1/":"my-username"} - Start DockerDesktop from the start menu
- Right after opening, it indicates I'm not logged in - the login button says "Sign In"
- Check credentials from console:
docker-credential-desktop list - Output:
{"https://index.docker.io/v1/":"my-username"} - After ~2-3 min, notification pops up in DockerDesktop saying I'm logged out (
You are signed out Sign in to share images and collaborate with your team) and browser page opens with saying the same - Check credentials from console:
docker-credential-desktop list - Output:
{} - Try to login again from console:
docker login -u my-username, provide password - Error:
Error response from daemon: Get "https://registry-1.docker.io/v2/": context deadline exceededorError response from daemon: Get "https://registry-1.docker.io/v2/": net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)(both errors are happening interchangeably, no apparent pattern to know which one will be returned) - Shutdown DockerDesktop
- Try to login again from console:
docker login -u my-username, provide password - Command executes successfully (message:
Login Succeeded) - Verify if credentials are stored in credential manager:
docker-credential-desktop list - Output:
{"https://index.docker.io/v1/":"my-username"} - Go back to (6), the behavior repeats over again
Expected behavior
DockerDesktop uses locally stored credentials. It does not logout and remove stored credentials right after starting.
docker version
Client:
Version: 27.5.1
API version: 1.47
Go version: go1.22.11
Git commit: 9f9e405
Built: Wed Jan 22 13:41:44 2025
OS/Arch: windows/amd64
Context: desktop-linux
Server: Docker Desktop 4.38.0 (181591)
Engine:
Version: 27.5.1
API version: 1.47 (minimum version 1.24)
Go version: go1.22.11
Git commit: 4c9b3b0
Built: Wed Jan 22 13:41:17 2025
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.7.25
GitCommit: bcc810d6b9066471b0b6fa75f557a15a1cbf31bb
runc:
Version: 1.1.12
GitCommit: v1.1.12-0-g51d5e946
docker-init:
Version: 0.19.0
GitCommit: de40ad0
docker info
Client:
Version: 27.5.1
Context: desktop-linux
Debug Mode: false
Plugins:
ai: Ask Gordon - Docker Agent (Docker Inc.)
Version: v0.7.3
Path: C:\Program Files\Docker\cli-plugins\docker-ai.exe
buildx: Docker Buildx (Docker Inc.)
Version: v0.20.1-desktop.2
Path: C:\Program Files\Docker\cli-plugins\docker-buildx.exe
compose: Docker Compose (Docker Inc.)
Version: v2.32.4-desktop.1
Path: C:\Program Files\Docker\cli-plugins\docker-compose.exe
debug: Get a shell into any image or container (Docker Inc.)
Version: 0.0.38
Path: C:\Program Files\Docker\cli-plugins\docker-debug.exe
desktop: Docker Desktop commands (Beta) (Docker Inc.)
Version: v0.1.4
Path: C:\Program Files\Docker\cli-plugins\docker-desktop.exe
dev: Docker Dev Environments (Docker Inc.)
Version: v0.1.2
Path: C:\Program Files\Docker\cli-plugins\docker-dev.exe
extension: Manages Docker extensions (Docker Inc.)
Version: v0.2.27
Path: C:\Program Files\Docker\cli-plugins\docker-extension.exe
feedback: Provide feedback, right in your terminal! (Docker Inc.)
Version: v1.0.5
Path: C:\Program Files\Docker\cli-plugins\docker-feedback.exe
init: Creates Docker-related starter files for your project (Docker Inc.)
Version: v1.4.0
Path: C:\Program Files\Docker\cli-plugins\docker-init.exe
sbom: View the packaged-based Software Bill Of Materials (SBOM) for an image (Anchore Inc.)
Version: 0.6.0
Path: C:\Program Files\Docker\cli-plugins\docker-sbom.exe
scout: Docker Scout (Docker Inc.)
Version: v1.16.1
Path: C:\Program Files\Docker\cli-plugins\docker-scout.exe
Server:
Containers: 0
Running: 0
Paused: 0
Stopped: 0
Images: 0
Server Version: 27.5.1
Storage Driver: overlayfs
driver-type: io.containerd.snapshotter.v1
Logging Driver: json-file
Cgroup Driver: cgroupfs
Cgroup Version: 1
Plugins:
Volume: local
Network: bridge host ipvlan macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file local splunk syslog
CDI spec directories:
/etc/cdi
/var/run/cdi
Swarm: inactive
Runtimes: io.containerd.runc.v2 nvidia runc
Default Runtime: runc
Init Binary: docker-init
containerd version: bcc810d6b9066471b0b6fa75f557a15a1cbf31bb
runc version: v1.1.12-0-g51d5e946
init version: de40ad0
Security Options:
seccomp
Profile: unconfined
Kernel Version: 5.15.167.4-microsoft-standard-WSL2
Operating System: Docker Desktop
OSType: linux
Architecture: x86_64
CPUs: 12
Total Memory: 7.585GiB
Name: docker-desktop
ID: fe87094a-d26c-4317-977b-089bcdd1cf05
Docker Root Dir: /var/lib/docker
Debug Mode: false
HTTP Proxy: http.docker.internal:3128
HTTPS Proxy: http.docker.internal:3128
No Proxy: hubproxy.docker.internal
Labels:
com.docker.desktop.address=npipe://\\.\pipe\docker_cli
Experimental: false
Insecure Registries:
hubproxy.docker.internal:5555
127.0.0.0/8
Live Restore Enabled: false
WARNING: No blkio throttle.read_bps_device support
WARNING: No blkio throttle.write_bps_device support
WARNING: No blkio throttle.read_iops_device support
WARNING: No blkio throttle.write_iops_device support
WARNING: daemon is not using the default seccomp profile
Diagnostics ID
04D0B04E-77E7-4760-9704-B52AECBC8D60/20250213214506
Additional Info
Gathering of diagnostic was done with DockerDesktop not running. It was impossible to upload diagnostics while it was running as the upload was failing with the same error as login (request send failed, Put "https://docker-pinata-support.s3.us-east-1.amazonaws.com/incoming/3/04D0B04E-77E7-4760-9704-B52AECBC8D60/20250213213636.zip?x-id=PutObject": context deadline exceeded).
Same issues here. Have ruled out desktop EDR tooling, Proxy, Firewalls. Rolling back to a prior version looks like our only option right now to restore productivity.
Found that even on the very rare occasion where Docker Desktop would authenticate - any container I would run would have no network connectivity and builds wouldn't work either, failing with the context deadline exceeded error.
I've now uninstalled 4.38.0, installed 4.37.1 and all issues gone - 4.38.0 is definitely a BAD release and should really be pulled unless you can fix it VERY quickly.
I also had the same issues. SSO sign in failing, unable to pull images/layers, unable to connect to Azure resources. It all very much looks like network connectivity issues. I've downgraded to v4.32.0, which got me up and running again. I haven't tried any later versions.
Same thing happens to me. Cannot pull images nor login via SSO.
same issue happened to me after updating to 4.38.0 nothing worked (no login - endless loading bar in docker desktop, pull images not working, ...) downgrade to 4.37.1 brought it back to work.
As meantioned: you should NOT install 4.38.0 as it is broken.
We've found the issue and it will be fixed with Docker Desktop 4.39
Any idea when 4.39 will be rolled out?
4.39 is available for download in the release notes docs or via in-app update under Settings > Software updates