Repository navigation
Docker Desktop restores Compose and Buildx symlinks but leaves Docker CLI pointing to OrbStack #738
Description
Bug report
I have both OrbStack and Docker Desktop installed on my Mac. After quitting OrbStack and opening Docker Desktop, Docker Desktop restores the docker-compose and docker-buildx symlinks to its bundled binaries, but leaves /usr/local/bin/docker pointing to OrbStack.
The Docker context switches to desktop-linux, resulting in a mixed setup: OrbStack’s Docker CLI with Docker Desktop’s Compose, Buildx, and engine.
Is this intentional? I expected Docker Desktop to restore all three links, or provide a way to restore the main Docker CLI link through the application.
Steps to reproduce:
-
Install Docker Desktop and OrbStack on the same Mac.
-
Quit both applications.
-
Point all three symlinks to Docker Desktop:
sudo ln -sfn /Applications/Docker.app/Contents/Resources/bin/docker /usr/local/bin/docker
ln -sfn /Applications/Docker.app/Contents/Resources/cli-plugins/docker-compose ~/.docker/cli-plugins/docker-compose
ln -sfn /Applications/Docker.app/Contents/Resources/cli-plugins/docker-buildx ~/.docker/cli-plugins/docker-buildx
-
Open OrbStack.
-
Inspect the links:
ls -l /usr/local/bin/docker ~/.docker/cli-plugins/docker-compose ~/.docker/cli-plugins/docker-buildx
All three now point to binaries inside OrbStack.app.
-
Quit OrbStack. Confirm that all three links still point to OrbStack.
-
Open Docker Desktop.
-
Run:
ls -l /usr/local/bin/docker ~/.docker/cli-plugins/docker-compose ~/.docker/cli-plugins/docker-buildx
docker context show
Actual result:
Compose and Buildx point to Docker Desktop, but /usr/local/bin/docker still points to OrbStack. The context is desktop-linux.
Expected result:
All three links point to Docker Desktop, or Docker Desktop provides a clear notification or action to restore the Docker CLI link.
Platform
macOS
Version information
Client:
Version: 29.8.2
API version: 1.56
Go version: go1.26.8
Git commit: 7fc2dff
Built: Wed Sep 30 19:32:03 2026
OS/Arch: darwin/arm64
Context: desktop-linux
Server: Docker Desktop 4.94.0 (241994)
Engine:
Version: 29.8.2
API version: 1.56 (minimum version 1.40)
Go version: go1.26.8
Git commit: 8af9fe3
Built: Wed Sep 30 19:31:50 2026
OS/Arch: linux/arm64
Experimental: false
containerd:
Version: v2.3.6
GitCommit: ee2735368117d2eb259779949d5e75cdafec9761
runc:
Version: 1.5.1
GitCommit: v1.5.1-0-g8f2685a4
docker-init:
Version: 0.19.0
GitCommit: de40ad0
Client:
Version: 29.8.2
Context: desktop-linux
Debug Mode: false
Plugins:
agent: Docker AI Agent Runner (Docker Inc.)
Version: v1.144.0
Path: /Users/ww/.docker/cli-plugins/docker-agent
ai: Docker AI Agent - Ask Gordon (Docker Inc.)
Version: v1.31.0
Path: /Users/ww/.docker/cli-plugins/docker-ai
buildx: Docker Buildx (Docker Inc.)
Version: v0.37.2
Path: /Users/ww/.docker/cli-plugins/docker-buildx
compose: Docker Compose (Docker Inc.)
Version: v5.5.1
Path: /Users/ww/.docker/cli-plugins/docker-compose
debug: Get a shell into any image or container (Docker Inc.)
Version: 0.0.47
Path: /Users/ww/.docker/cli-plugins/docker-debug
desktop: Docker Desktop commands (Docker Inc.)
Version: v0.4.4
Path: /Users/ww/.docker/cli-plugins/docker-desktop
dhi: CLI for managing Docker Hardened Images (Docker Inc.)
Version: v0.0.7
Path: /Users/ww/.docker/cli-plugins/docker-dhi
extension: Manages Docker extensions (Docker Inc.)
Version: v0.2.31
Path: /Users/ww/.docker/cli-plugins/docker-extension
init: Creates Docker-related starter files for your project (Docker Inc.)
Version: v1.4.0
Path: /Users/ww/.docker/cli-plugins/docker-init
mcp: Docker MCP Plugin (Docker Inc.)
Version: v0.44.1
Path: /Users/ww/.docker/cli-plugins/docker-mcp
model: Docker Model Runner (Docker Inc.)
Version: v1.2.6
Path: /Users/ww/.docker/cli-plugins/docker-model
offload: Docker Offload (Docker Inc.)
Version: v0.6.53
Path: /Users/ww/.docker/cli-plugins/docker-offload
pass: Docker Pass Secrets Manager Plugin (beta) (Docker Inc.)
Version: v0.2.4
Path: /Users/ww/.docker/cli-plugins/docker-pass
sandbox: "docker sandbox" is deprecated, use Docker Sandboxes instead (Docker Inc.)
Version: v0.13.0
Path: /Users/ww/.docker/cli-plugins/docker-sandbox
scout: Docker Scout (Docker Inc.)
Version: v1.25.0
Path: /Users/ww/.docker/cli-plugins/docker-scout
Server:
Containers: 2
Running: 2
Paused: 0
Stopped: 0
Images: 3
Server Version: 29.8.2
Storage Driver: overlayfs
driver-type: io.containerd.snapshotter.v1
Logging Driver: local
Cgroup Driver: cgroupfs
Cgroup Version: 2
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
Discovered Devices:
cdi: docker.com/gpu=webgpu
Swarm: inactive
Runtimes: io.containerd.runc.v2 runc
Default Runtime: runc
Init Binary: docker-init
containerd version: ee2735368117d2eb259779949d5e75cdafec9761
runc version: v1.5.1-0-g8f2685a4
init version: de40ad0
Security Options:
seccomp
Profile: builtin
cgroupns
Kernel Version: 7.0.14-linuxkit
Operating System: Docker Desktop
OSType: linux
Architecture: aarch64
CPUs: 8
Total Memory: 7.748GiB
Name: docker-desktop
ID: eb09e7f3-6390-440b-abf4-db009625464e
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=unix:///Users/ww/Library/Containers/com.docker.docker/Data/docker-cli.sock
Experimental: false
Insecure Registries:
hubproxy.docker.internal:5555
127.0.0.0/8
::1/128
Live Restore Enabled: false
Firewall Backend: iptables
ww@Wojciechs-MacBook-Air lineupfarm %Diagnostics ID
No response
Activity