Bug report
Bug description
Docker Desktop terminates itself ~5–25 seconds after any container with a published host port of 32000 is started. This is not container-specific — the trigger is the host port number alone.
The app does not crash (no crash reports in ~/Library/Logs/DiagnosticReports). At the moment of the quit, com.docker.backend and the monitor both receive SIGTERM (engine linux/libkrun shutdown requested (cancel cause: terminated signal received), backend cancelled from .../backend.go:641), child processes are SIGKILLed (supervisor log shows wait status: 9 ×2–3), and the app exits cleanly (exit code 0). No /app/quit IPC request is logged, so this is not a normal app quit.
Reproduction steps
- Start Docker Desktop 4.86.0 (macOS 26.5.2, Apple Silicon, libkrun).
- Run:
docker run -d --rm --name test -p 32000:80 nginx:alpine
- Observe: Docker Desktop quits within ~25 seconds. The docker CLI loses the daemon (
Cannot connect to the Docker daemon at unix:///Users/.../.docker/run/docker.sock: no such file or directory).
- Control test with the same image:
docker run -d --rm --name test -p 32001:80 nginx:alpine
→ Docker Desktop stays running indefinitely. -p 31999:80 also works.
Additional observations:
- Also reproduced with a compose stack (
litellm, 32000:4000), which is how this was first noticed ("container starts → Docker Desktop exits"). Changing the host port to 32001 fixed it.
- Port 32000 is free on the host (no other listener), and is not in the macOS ephemeral range (49152–65535).
- Regression timeline: Docker Desktop 4.83.0 ran the same workload with zero occurrences (Aug 6–8). First occurrence Aug 10 after updating to 4.85.0 (4 SIGKILLs that day, 12 on Aug 13). 4.86.0 (updated Aug 14) is worse — 58 SIGKILLs in one day.
- Memory/CPU are not the cause: at trigger time the container used ~220 MB, host had 65%+ free memory, no jetsam records, no VM OOM.
logging driver limits (--log-opt max-size) do not help.
Expected behavior
Starting a container that publishes host port 32000 should behave like any other published port.
Actual behavior
Docker Desktop quits (SIGTERM to backend + monitor, SIGKILL of children, clean exit 0) within seconds of the container start.
Log evidence (macOS paths)
~/Library/Containers/com.docker.docker/Data/log/host/com.docker.backend.log:
engine linux/libkrun shutdown requested (cancel cause: terminated signal received)
backend cancelled from /Users/ec2-user/jenkins/workspace/.../backend.go:641
~/Library/Containers/com.docker.docker/Data/log/host/supervisor.log:
wait status: 9 ×2–3 at the moment of quit (SIGKILL of children)
~/Library/Containers/com.docker.docker/Data/log/vm/console.log:
- vpnkit
data connection closed. Will reconnect in 1s. right after host-side termination
- No crash reports for any
com.docker.* process.
Workaround
Use a different host port (e.g. -p 32001:80 / 32001:4000).
Platform
macOS
Version information
Client:
Version: 29.7.2
API version: 1.55
Go version: go1.26.5
Git commit: a7dcaa6
Built: Wed Aug 5 18:27:50 2026
OS/Arch: darwin/arm64
Context: desktop-linux
Server: Docker Desktop 4.86.0 (236216)
Engine:
Version: 29.7.2
API version: 1.55 (minimum version 1.40)
Go version: go1.26.5
Git commit: 6a43e3d
Built: Wed Aug 5 18:28:35 2026
OS/Arch: linux/arm64
Experimental: true
containerd:
Version: v2.2.5
GitCommit: e53c7c1516c3b2bff98eb76f1f4117477e6f4e66
runc:
Version: 1.3.6
GitCommit: v1.3.6-0-g491b69ba
docker-init:
Version: 0.19.0
GitCommit: de40ad0
OS: macOS 26.5.2 (build 25F84)
Hardware: Apple M4 Pro (arm64), Mac16,11
Diagnostics ID
Not provided — can generate on request.
Bug report
Bug description
Docker Desktop terminates itself ~5–25 seconds after any container with a published host port of 32000 is started. This is not container-specific — the trigger is the host port number alone.
The app does not crash (no crash reports in
~/Library/Logs/DiagnosticReports). At the moment of the quit,com.docker.backendand the monitor both receive SIGTERM (engine linux/libkrun shutdown requested (cancel cause: terminated signal received),backend cancelled from .../backend.go:641), child processes are SIGKILLed (supervisor log showswait status: 9×2–3), and the app exits cleanly (exit code 0). No/app/quitIPC request is logged, so this is not a normal app quit.Reproduction steps
Cannot connect to the Docker daemon at unix:///Users/.../.docker/run/docker.sock: no such file or directory).-p 31999:80also works.Additional observations:
litellm,32000:4000), which is how this was first noticed ("container starts → Docker Desktop exits"). Changing the host port to 32001 fixed it.loggingdriver limits (--log-opt max-size) do not help.Expected behavior
Starting a container that publishes host port
32000should behave like any other published port.Actual behavior
Docker Desktop quits (SIGTERM to backend + monitor, SIGKILL of children, clean exit 0) within seconds of the container start.
Log evidence (macOS paths)
~/Library/Containers/com.docker.docker/Data/log/host/com.docker.backend.log:engine linux/libkrun shutdown requested (cancel cause: terminated signal received)backend cancelled from /Users/ec2-user/jenkins/workspace/.../backend.go:641~/Library/Containers/com.docker.docker/Data/log/host/supervisor.log:wait status: 9×2–3 at the moment of quit (SIGKILL of children)~/Library/Containers/com.docker.docker/Data/log/vm/console.log:data connection closed. Will reconnect in 1s.right after host-side terminationcom.docker.*process.Workaround
Use a different host port (e.g.
-p 32001:80/32001:4000).Platform
macOS
Version information
Diagnostics ID
Not provided — can generate on request.