docker / for-mac

Bug reports for Docker Desktop for Mac
https://www.docker.com/products/docker#/mac
2.44k stars 118 forks source link

No CLI tools installed #7471

Open JustinTArthur opened 3 weeks ago

JustinTArthur commented 3 weeks ago

Description

On macOS Sequoia 15.1 (24B83) on an x86_64 Mac Pro, I installed Docker Desktop only to find myself without the CLI tools. They were not in the PATH and there is no bin directory in $HOME/.docker. Under Settings/Advanced, the User variant of CLI tools was pre-selected.

Is sign-in required to get the CLI now?

Reproduce

  1. Download Docker.dmg from docker.com's "Download Docker Desktop" (downloaded bundle version was 4.34.3)
  2. Drag the inner Docker.app to the /Applications folder
  3. Run the app from Launchpad, opt to skip sign-in.
  4. Follow the prompt to upgrade to the latest version and restart. (resulted in 4.35.1 installed)

Expected behavior

No response

docker version

Client: Version: 27.3.1 API version: 1.47 Go version: go1.22.7 Git commit: ce12230 Built: Fri Sep 20 11:38:18 2024 OS/Arch: darwin/amd64 Context: desktop-linux

Server: Docker Desktop 4.35.1 (173168) Engine: Version: 27.3.1 API version: 1.47 (minimum version 1.24) Go version: go1.22.7 Git commit: 41ca978 Built: Fri Sep 20 11:41:11 2024 OS/Arch: linux/amd64 Experimental: false containerd: Version: 1.7.21 GitCommit: 472731909fa34bd7bc9c087e4c27943f9835f111 runc: Version: 1.1.13 GitCommit: v1.1.13-0-g58aa920 docker-init: Version: 0.19.0 GitCommit: de40ad0

docker info

Client: Version: 27.3.1 Context: desktop-linux Debug Mode: false Plugins: buildx: Docker Buildx (Docker Inc.) Version: v0.17.1-desktop.1 Path: /Users/redacted/.docker/cli-plugins/docker-buildx compose: Docker Compose (Docker Inc.) Version: v2.29.7-desktop.1 Path: /Users/redacted/.docker/cli-plugins/docker-compose debug: Get a shell into any image or container (Docker Inc.) Version: 0.0.37 Path: /Users/redacted/.docker/cli-plugins/docker-debug desktop: Docker Desktop commands (Alpha) (Docker Inc.) Version: v0.0.15 Path: /Users/redacted/.docker/cli-plugins/docker-desktop dev: Docker Dev Environments (Docker Inc.) Version: v0.1.2 Path: /Users/redacted/.docker/cli-plugins/docker-dev extension: Manages Docker extensions (Docker Inc.) Version: v0.2.27 Path: /Users/redacted/.docker/cli-plugins/docker-extension feedback: Provide feedback, right in your terminal! (Docker Inc.) Version: v1.0.5 Path: /Users/redacted/.docker/cli-plugins/docker-feedback init: Creates Docker-related starter files for your project (Docker Inc.) Version: v1.3.0 Path: /Users/redacted/.docker/cli-plugins/docker-init sbom: View the packaged-based Software Bill Of Materials (SBOM) for an image (Anchore Inc.) Version: 0.6.0 Path: /Users/redacted/.docker/cli-plugins/docker-sbom scout: Docker Scout (Docker Inc.) Version: v1.14.0 Path: /Users/redacted/.docker/cli-plugins/docker-scout

Server: Containers: 0 Running: 0 Paused: 0 Stopped: 0 Images: 0 Server Version: 27.3.1 Storage Driver: overlay2 Backing Filesystem: extfs Supports d_type: true Using metacopy: false Native Overlay Diff: true userxattr: false Logging Driver: json-file 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 Swarm: inactive Runtimes: io.containerd.runc.v2 runc Default Runtime: runc Init Binary: docker-init containerd version: 472731909fa34bd7bc9c087e4c27943f9835f111 runc version: v1.1.13-0-g58aa920 init version: de40ad0 Security Options: seccomp Profile: unconfined cgroupns Kernel Version: 6.10.11-linuxkit Operating System: Docker Desktop OSType: linux Architecture: x86_64 CPUs: 24 Total Memory: 7.748GiB Name: docker-desktop ID: 78a33901-0c25-48c5-86dd-3152a8914d76 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/redacted/Library/Containers/com.docker.docker/Data/docker-cli.sock Experimental: false Insecure Registries: hubproxy.docker.internal:5555 127.0.0.0/8 Live Restore Enabled: false

WARNING: daemon is not using the default seccomp profile

Diagnostics ID

4CE315F1-4601-4611-B325-0EC9A6811045/20241031172446

Additional Info

No response

nicks commented 2 weeks ago

hi @JustinTArthur 👋

Thanks for the report. I poked through your diagnostic logs a bit. I think there was an unusual set of state files on your machine and you're hitting a bug in the installer.

If you run mkdir -p ~/.docker/bin and restart Docker Desktop, I think it will install the CLI tools correctly in user mode. Can you try that and let me know if it works?

JustinTArthur commented 2 weeks ago

Hey, @nicks 👋. I agree likely an installer bug. With docker.com hosting the older 4.34.3 bundle it's hard for me to know if the scenario that lead to this has already been fixed in 4.35.x.

Before I saw your comment I ran the Uninstall step from the Troubleshooting pane and re-opened the app from Launchpad. This time I was prompted for the Recommended vs Advanced flow. In Recommended, I ended up with the System preference for CLI and the binaries were found in /usr/local/bin. However, that is after the internal self-update to 4.35.1. That also doesn't tell us if the issue has been fixed for the User installation.

I'll try 4.35.1 with Advanced next to see if I can still reproduce the User flow issue.

JustinTArthur commented 2 weeks ago

In the reinstalls, sign-in and survey were skippable without negative impact.

If it's not specific to my environment, it may have been a 4.34 bug and this could probably be closed out assuming 4.35.x will become the docker.com downloadable for x86_64 Mac soon. Sorry for this noise if so!