In diesem Beitrag beschäftigen wir uns um den Docker-Betrieb unter Windows. Trotz der Linux-Wurzeln der Container-Lösung ist dies übrigens kein Widerspruch; denn auch am Windows-Desktop möchte man mitunter schnell Entwicklungsumgebungen oder ein Datenbank-Back-End bereitstellen.
Analog zum vorangegangen Teil soll es auch hier um das exemplarische Bereitstellen eines MySQL-Containers gehen. Dabei müssen wir freilich immer im Hinterkopf behalten, dass wir bisher noch keine Möglichkeit erörtert haben, Daten in einem Container persistent zu speichern. Ohne eine solche Möglichkeit ist der Betrieb einer Datenbank nämlich nicht wirklich sinnvoll.
Doch zunächst zur Docker–Installation unter Windows. Wer sich bisher nicht intensiv mit Docker befasst hat, wird möglicherweise erstaunt sein, dass man Docker ganz regulär in einer Windows-Version vom Docker Store herunterladen und installieren kann. Einzige Voraussetzung hierfür ist ein existierender Docker-Account, den man aber für den Zugriff auf Docker-Hub ohnehin benötigt.
Natürlich gibt es nicht wirklich eine native Docker-Version für Windows. Daher besteht auch die Installationsvoraussetzung von „Docker für Windows“ darin, entweder Hyper-V als Virtualisierer bereitzustellen – z. B. unter Windows 10 – oder die so genannte Docker Toolbox zu installieren. Option zwei ist also für ältere Windows-Systeme (vor Version 8.1) gedacht.
- „Docker Machine“ zum Ausführen von „docker-machine”-Kommandos
- „Docker Engine” zum Ausführen von „docker“-Befehlen
- „Docker Compose” zum Ausführen von „docker-compose“-Befehlen
- Der grafischen Docker-UI „Kitematic“
- Eine vorkonfigurierten Shell als Docker-CLI, die in CMD und PowerShell eingebettet ist
- Git für Windows
- Oracle VirtualBox
Dass die Docker-Toolbox VirtualBox mitbringt verrät, wie der Spaß funktioniert. Die Toolbox stellt schlicht einen virtualisierten Linux-Container-Host bereit, der sich im NAT-Netzwerk-Modus „hinter“ dem realen Oracle- oder (bei Windows 10) dem Hyper-V-Host „verbirgt“.
Für den Windows-Client bzw. -Arbeitsplatz sieht es so aus, als fungiere die Windows-Maschine als Container-Host. Unter Windows 10 kann man also auch ganz naiv an das Experiment „Docker unter Windows“ herangehen und Docker CE für Windows einfach so in Form des Paketes „Docker For Windows.exe“ installieren.
Ist auf dem Windows-Host die Hyper-V-Rolle aktiv, funktioniert dies tadellos. Dass im Hintergrund eine passende VM als Container-Host werkelt, bekommt man nicht mit – es sei denn, man wirft „bewusst“ einen Blick in den Hyper-V-Manager; die Abbildung zeigt den Manager unter Windows 10. Die Hyper-V-VM für den Docker-Host heißt „MobyLinuxVM“ und verschlingt knapp zwei Gigabyte Arbeitsspeicher.