Why is Docker not installed on macOS? #25777
-
Hi there 😊 Currently, macOS does not have Docker installed. Is there a special reason for this, as this is being inconsistent with Linux and Windows? I have seen https://github.community/t5/GitHub-Actions/Is-it-possible-to-install-and-configure-Docker-on-MacOS-runner/m-p/39002#M3618, but I wonder whether there are official plans to change this? Have a nice day, Golo |
Beta Was this translation helpful? Give feedback.
Replies: 7 comments
-
Docker does not support MacOS it is only avaialbe for Windows and Linux. The docker desktop developer experience actually runs your containers in a Linux VM and is not something that can be installed on a service as it is not supported or licensed for that scenario. |
Beta Was this translation helpful? Give feedback.
-
First of all, thanks for taking the time to answer 😊 From a technical point if view, yes, Docker does not run natively on macOS. However, I would like to run some (Node.js) code on macOS, which builds some Docker images. How can I run this on the macOS environment, given that Docker (for Mac) is not installed? PS: As said in the initial question, I have seen the workarounds… however my question was whether Docker (for Mac) will be officially supported on macOS. |
Beta Was this translation helpful? Give feedback.
-
As mentioned in the linked ticket, docker should be not supported on hosted macOS. Unfortuately the docker community licensing is such that we are not able to install the docker for mac on our hosted runners. We have had some discussions with Docker about doing this but they have held firm on their request that using Docker on a service requires an enterprise license and docker enterprise is not at all supported on macOS. For Windows Microsoft holds the license for Docker Enterprise on Windows so we do not have any issues there and for Linux we use a specific build of Docker for Linux that is built and maintained by Azure. |
Beta Was this translation helpful? Give feedback.
-
Thanks for taking the time to explain this! That’s sad news, especially that it’s something out of your scope (because this means you can’t do anything to change it). I think that this is a pretty dumb decision by Docker, but well… as said, one can’t change it. Again, thanks for taking the time to reply :slight_smile: |
Beta Was this translation helpful? Give feedback.
-
Would it be possible to install another OCI tools, e.g. podman? It’s supposed to be mostly a drop-in replacement, so for many use cases it might be a decent replacement. It could maybe also be used to run Docker actions on macOS. I mean, macOS sucks for containers, but a similar hack as for Docker seems to exist, and I think they have a more liberal stance on licensing; I may be wrong, though. |
Beta Was this translation helpful? Give feedback.
-
For anyone looking, here is how I got it working for me. github.comsaltzmanjoelh/RunDockerInMacOSAction/blob/a91b09d613f8d0aec2ff50afe9b25a0016618b47/.github/workflows/swift.yml
This file has been truncated. show original |
Beta Was this translation helpful? Give feedback.
-
Thanks I tried but even after installing docker, not able to start docker engine., /usr/local/opt/docker-machine/bin/docker-machine start default check_suite_focus=true#step:5:62)Creating client certificate: /Users/runner/.docker/machine/certs/cert.pem check_suite_focus=true#step:5:63)Running pre-create checks… check_suite_focus=true#step:5:64)Error with pre-create check: “VBoxManage not found. Make sure VirtualBox is installed and VBoxManage is in the path” check_suite_focus=true#step:5:65)Error: Process completed with exit code 3. |
Beta Was this translation helpful? Give feedback.
As mentioned in the linked ticket, docker should be not supported on hosted macOS.
Unfortuately the docker community licensing is such that we are not able to install the docker for mac on our hosted runners. We have had some discussions with Docker about doing this but they have held firm on their request that using Docker on a service requires an enterprise license and docker enterprise is not at all supported on macOS.
For Windows Microsoft holds the license for Docker Enterprise on Windows so we do not have any issues there and for Linux we use a specific build of Docker for Linux that is built and maintained by Azure.