9.2.2022 |

Alternativen für Docker Desktop für macOS

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.

rancher desktop architecture

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.

Rancher GUI on Mac

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

Links

Sophia Brandt
Zur Übersicht

Mehr vom DevSquad...

Dennis Hundertmark

Debug your CSS layouts the easy way

Sophia Brandt

Das Strategy-Pattern mit Angular