In diesem Artikel stelle ich zwei Alternativen für Docker Desktop für macOS vor:
1. Rancher Desktop
Rancher Desktop ist eine Open-Source-Desktopanwendung, welche auf Electron.js basiert. Die Anwendung ist auch für Linux und Windows verfügbar.
Installation:
brew install --cask rancher
Der Docker-Kommandozeilenbefehl muss aber trotzdem installiert sein.
Rancher kann dies per GUI in dem "Supporting Utilities" Tab erledigen oder man installiert docker separat.
(Wenn man compose v2 benutzen will, muss dies natürlich auch installiert sein - Anleitung unten oder in den FAQ von Rancher Desktop.)
Beende Docker Desktop, falls vorhanden. (Es kann weiterhin installiert bleiben, sollte aber nicht aktiv laufen.)
Rancher Desktop bietet eine GUI (graphische Oberfläche) zum Erstellen und Verwalten von Kubernetes-Clustern und Containern an.
In der Benutzeroberfläche hat man die Auswahl, ob man als Container Runtime containerd oder dockerd/Moby, den Docker daemon, benutzen möchte.
Wenn man containerd verwendet, kann man das Kommandozeilenwerkzeug nerdctl nutzen, bei dockerd wie bisher üblich docker.
Sollte man dockerd/Moby anklicken, dann funktionieren alle docker-Befehle wie gehabt, z.B. docker ps
.
(docker compose
muss eventuell extra installiert werden, siehe unten oder in den FAQ.)
2. Colima
Colima ist eine Kommandozeilen-Alternative zum Erstellen und Verwaltung von Containern auf macOS.
Hinter den Kulissen nutzt colima ebenfalls Lima-VM.
Lima launches Linux virtual machines with automatic file sharing and port forwarding (similar to WSL2), and containerd.
Installation:
brew install colima
Beende Docker Desktop. (Es kann weiterhin installiert bleiben, sollte aber nicht aktiv laufen.)
Der Docker-Kommandozeilenbefehl muss aber trotzdem installiert sein (Anleitung unten).
(Wenn man compose v2 benutzen will, muss dies natürlich auch auf dem Rechner vorhanden sein - Anleitung unten.)
Wenn man nun versucht, docker zu benutzen, wird es nicht funktionieren:
docker ps
> Can't connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
Jetzt kann man colima starten:
colima start
Die Einstellungen sind anpassbar:
colima start --cpu 2 --memory 8 --disk 10
Nun funktionieren alle docker Befehle ohne Anpassungen.
Sollte man colima nicht mehr nutzen wollen, muss man daran denken, den Docker Context wieder zurückzusetzen. Colima überschreibt diesen in /Users/<usernane>/.docker/config.json
:
docker context use default
Wie installiere ich Docker und Docker Compose v2
Wenn man Docker Desktop komplett deinstalliert, muss man dafür sorgen, dass man zumindest das Kommandozeilenwerkzeug zur Verfügung hat.
Man kann docker separat per Homebrew installieren:
brew install docker
Compose v2 ist bei Docker Desktop inklusive, fehlt aber nun ja leider. Daher muss das nun händisch machen.
Hier ist ein Beispiel für die Intel-Variante von macOs:
mkdir -p ~/.docker/cli-plugins/
curl -SL https://github.com/docker/compose/releases/download/v2.2.3/docker-compose-darwin-x86_64 -o ~/.docker/cli-plugins/docker-compose
chmod +x ~/.docker/cli-plugins/docker-compose
Und der vergleichbare Befehl für M1-Rechner:
mkdir -p ~/.docker/cli-plugins/
curl -SL https://github.com/docker/compose/releases/download/v2.2.3/docker-compose-darwin-aarch64 -o ~/.docker/cli-plugins/docker-compose
chmod +x ~/.docker/cli-plugins/docker-compose
Nun sollte auch docker compose
funktionieren:
docker compose version
Credentials Error
Es kann sein, dass man folgenden Fehler beim Herunterladen von Docker Images bekommt:
Error saving credentials: error storing credentials - err: exec: “docker-credential-osxkeychain”: executable file not found in $PATH, out:
In diesem Fall benötigt man den docker-credentials-helper:
brew install docker-credential-helper