OrbStack — Docker und Linux-Maschinen auf dem Mac
Praxis-Guide zu OrbStack — der schnellen Docker-Desktop-Alternative für macOS, mit Linux-Maschinen, Kubernetes und DNS per orb-CLI.
OrbStack ist eine schnelle, ressourcenschonende macOS-App, mit der du Docker-Container und vollwertige Linux-Maschinen startest – eine leichtgewichtige Alternative zu Docker Desktop. Statt einer schweren VM nutzt OrbStack eine optimierte Virtualisierung, die kaum CPU, RAM und Akku beansprucht und in Sekunden startet. Über das CLI orb (bzw. orbctl) verwaltest du Maschinen, öffnest Shells, kopierst Dateien und steuerst den eingebauten Kubernetes-Cluster. Praktisch: Jede Maschine bekommt automatisch einen .orb.local-Hostnamen und eine fertige SSH-Konfiguration. Dieser Guide zeigt dir die wichtigsten orb-Befehle für den Alltag – vom Anlegen einer Linux-Maschine bis zum Docker- und Kubernetes-Workflow.
Maschinen-Lebenszyklus
orb create <distro> <name> — Legt eine neue Linux-Maschine mit angegebener Distribution und Namen an.
orb create ubuntu:24.04 myvmorb create <distro> — Legt eine Linux-Maschine mit automatisch generiertem Namen an.
orb create debian:12orb start <name> — Startet eine gestoppte Linux-Maschine.
orb start myvmorb stop <name> — Stoppt eine laufende Linux-Maschine.
orb stop myvmorb delete <name> — Löscht eine Linux-Maschine samt ihren Daten endgültig.
orb delete myvmorb clone <source> <target> — Klont eine bestehende Linux-Maschine in eine neue.
orb clone myvm myvm-copyorb rename <old> <new> — Benennt eine bestehende Linux-Maschine um.
orb rename myvm devboxShell & Befehle
orb shell — Öffnet eine interaktive Shell in der Standard-Linux-Maschine.
orb shellorb shell <name> — Öffnet eine interaktive Shell in einer bestimmten Linux-Maschine.
orb shell myvmorb shell -u <user> <name> — Öffnet eine Shell als bestimmter Benutzer in der Maschine.
orb shell -u root myvmorb run <name> -- <command> — Führt einen einzelnen Befehl in einer Linux-Maschine aus.
orb run myvm -- uname -aorb run -u <user> <name> -- <command> — Führt einen Befehl als bestimmter Benutzer in einer Maschine aus.
orb run -u root myvm -- apt-get updatessh orb — Verbindet sich per SSH mit der Standard-Maschine über OrbStacks eingebaute SSH-Konfiguration.
ssh orbssh <name>@orb — Verbindet sich per SSH mit einer benannten Linux-Maschine.
ssh myvm@orbDateitransfer
orb push <name> <local_path> <remote_path> — Kopiert eine Datei oder ein Verzeichnis vom Host in eine Linux-Maschine.
orb push myvm ./app /home/user/apporb pull <name> <remote_path> <local_path> — Kopiert eine Datei oder ein Verzeichnis aus einer Linux-Maschine auf den Host.
orb pull myvm /var/log/syslog ./syslog.txtscp <local> <name>@orb:<remote> — Kopiert Dateien per Standard-SCP in eine Maschine (OrbStack ergänzt die SSH-Konfiguration automatisch).
scp ./config.yaml myvm@orb:/etc/app/config.yamlscp <name>@orb:<remote> <local> — Kopiert Dateien per Standard-SCP aus einer Maschine auf den Host.
scp myvm@orb:/var/log/app.log ./app.logAuflisten & Infos
orb list — Listet alle Linux-Maschinen mit Status und IP-Adresse auf.
orb listorb info — Zeigt detaillierte Infos zur Standard-Maschine (IP, CPU, Speicher, Festplatte).
orb infoorb info <name> — Zeigt detaillierte Informationen zu einer bestimmten Linux-Maschine.
orb info myvmorb version — Zeigt die installierte OrbStack-CLI- und -Engine-Version.
orb versionorb status — Zeigt den aktuellen Status der OrbStack-Engine (läuft, gestoppt usw.).
orb statusDocker-Integration
docker context ls — Listet alle Docker-Kontexte auf. OrbStack registriert sich automatisch als Kontext „orbstack".
docker context lsdocker context use orbstack — Wechselt den aktiven Docker-Kontext zu OrbStack.
docker context use orbstackdocker run -it ubuntu bash — Startet Docker-Container wie gewohnt – alle Standard-Docker-Befehle funktionieren mit OrbStack.
docker run -it ubuntu bashdocker compose up -d — Nutzt Docker Compose wie gewohnt – OrbStack ist vollständig Docker-kompatibel.
docker compose up -ddocker system df — Zeigt OrbStacks Docker-Speichernutzung: Images, Container, Volumes und Build-Cache.
docker system dfdocker buildx build --platform linux/amd64,linux/arm64 -t name . — Multi-Plattform-Builds funktionieren dank OrbStacks mitgeliefertem buildx ohne Zusatzaufwand.
docker buildx build --platform linux/amd64,linux/arm64 -t my-app .Kubernetes
orbctl k8s start — Startet den eingebauten Single-Node-Kubernetes-Cluster.
orbctl k8s startorbctl k8s stop — Stoppt den Kubernetes-Cluster, ohne Daten zu löschen.
orbctl k8s stoporbctl k8s reset — Setzt den Kubernetes-Cluster auf einen sauberen Zustand zurück (zerstört alle Workloads).
orbctl k8s resetkubectl config use-context orbstack — Schaltet kubectl auf den OrbStack-Kubernetes-Cluster um.
kubectl config use-context orbstackkubectl get nodes — Prüft, ob der OrbStack-Kubernetes-Node bereit ist.
kubectl get nodeskubectl get pods -A — Listet alle Pods über alle Namespaces im OrbStack-k8s-Cluster auf.
kubectl get pods -AKonfiguration & Updates
orb config — Zeigt die aktuelle OrbStack-Konfiguration.
orb configorb config set <key> <value> — Setzt eine Konfigurationsoption für OrbStack.
orb config set defaultMachine myvmorbctl update — Sucht nach OrbStack-Updates und installiert sie.
orbctl updateorbctl restart — Startet die OrbStack-Engine neu (nützlich nach Konfigurationsänderungen oder wenn die Engine hängt).
orbctl restartorbctl stop — Stoppt die OrbStack-Engine und alle Maschinen vollständig.
orbctl stopNetzwerk & DNS
ping myvm.orb.local — Jede OrbStack-Maschine bekommt einen .orb.local-Hostnamen, der von macOS aus auflösbar ist.
ping myvm.orb.localcurl http://myvm.orb.local:8080 — Erreicht Dienste in einer Linux-Maschine per Hostname, ohne Port-Mapping.
curl http://myvm.orb.local:8080curl http://host.internal — Erreicht den macOS-Host aus einer Linux-Maschine oder einem Container über diesen speziellen Hostnamen.
curl http://host.internal:3000orb info <name> — Ermittelt die IP-Adresse einer Maschine für direkte Verbindungen.
orb info myvmVerfügbare Linux-Distributionen
orb create ubuntu <name> — Legt eine Ubuntu-Maschine an (standardmäßig die aktuelle LTS).
orb create ubuntu devboxorb create ubuntu:24.04 <name> — Legt eine Ubuntu-24.04-Maschine (Noble) an.
orb create ubuntu:24.04 nobleorb create debian:12 <name> — Legt eine Debian-12-Maschine (Bookworm) an.
orb create debian:12 bookwormorb create fedora <name> — Legt eine Fedora-Linux-Maschine an.
orb create fedora fedora-devorb create arch <name> — Legt eine Arch-Linux-Maschine an.
orb create arch arch-devorb create alpine <name> — Legt eine minimale Alpine-Linux-Maschine an.
orb create alpine tinyorb create nixos <name> — Legt eine NixOS-Maschine an.
orb create nixos nix-dev Fazit
OrbStack zeigt, wie viel angenehmer containerbasierte Entwicklung auf dem Mac sein kann: schneller Start, geringer Ressourcenhunger und ein nahtloser Wechsel zwischen Docker, vollwertigen Linux-Maschinen und Kubernetes – alles über ein einziges CLI. Wenn du bisher Docker Desktop nutzt, lohnt sich ein Umstieg vor allem wegen der spürbar besseren Akkulaufzeit und der automatischen .orb.local-Hostnamen. Beachte, dass OrbStack ausschließlich auf macOS läuft und für die kommerzielle Nutzung eine Lizenz erfordert – privat ist es kostenlos.
Weiterführende Links
- OrbStack – offizielle Dokumentation – Handbuch und CLI-Referenz (englisch)
- OrbStack – Projektseite – Funktionsüberblick und Download (englisch)
Verwandte Kommandos
- ddev – containerbasierte lokale Dev-Umgebungen für PHP & Co.
- docker – Container bauen, starten und verwalten
- docker-compose – Multi-Container-Setups deklarativ definieren