Docker-Einführung, Teil 5

Docker-Bereitstellung unter Windows

| Autor / Redakteur: Thomas Drilling / Stephan Augsten

Die über Hyper-V bereitgestellte Virtual Machine für den Docker-Host heißt „MobyLinuxVM“.
Die über Hyper-V bereitgestellte Virtual Machine für den Docker-Host heißt „MobyLinuxVM“. (Bild: Drilling / Microsoft)

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.

Die Docker-Toolbox für Windows besteht daher aus den folgenden Komponenten:

  • „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“.

Im Docker-Store finden sich mehrere Möglichkeiten, die Docker Community Edition zu installieren.
Im Docker-Store finden sich mehrere Möglichkeiten, die Docker Community Edition zu installieren. (Bild: Drilling / Docker)

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.

Die über Hyper-V bereitgestellte Virtual Machine für den Docker-Host heißt „MobyLinuxVM“.
Die über Hyper-V bereitgestellte Virtual Machine für den Docker-Host heißt „MobyLinuxVM“. (Bild: Drilling / Microsoft)

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.

Alarm bei inaktiver Hyper-V-Umgebung.
Alarm bei inaktiver Hyper-V-Umgebung. (Bild: Drilling / Docker)

Installiert man das Paket Docker CE für Windows (ohne Docker Toolbox) auf einen Windows-Desktop ohne aktiviertem Hyper-V, wird das zwar gelingen, beim Starten von Docker kommt es dann aber zu einer Fehlermeldung wie in folgender Abbildung kommen.

Das Netzwerk für die Docker VM wird automatisch eingerichtet.
Das Netzwerk für die Docker VM wird automatisch eingerichtet. (Bild: Drilling / Microsoft)

Der zugehörige vSwitch wird als „internes“ Netzwerk (NAT) exklusiv für die Docker-Nutzung vorkonfiguriert, d. h. das abgebildete Transitnetz wird automatisch eingerichtet.

Das Kontextmenü des Systray-Symbols liefert die Option, Kitematic nachzuinstallieren.
Das Kontextmenü des Systray-Symbols liefert die Option, Kitematic nachzuinstallieren. (Bild: Drilling / Microsoft)

Installiert man Docker CE for Windows, muss man im Gegensatz zur Docker-Toolbox allerdings Tools wie Kitematic manuell nachinstallieren. Dies ist jedoch über das von Docker-für-Windows bereitgestellte Systray und den Kontextmenü-Eintrag „Kitematic“ problemlos möglich, wie der vorangegangene Screenshot zeigt.

Zudem gelingt es mit Hilfe des Systrays auf einfache Weise, eine Verbindung mit Docker Hub aufzunehmen, Docker zu aktualisieren (Check für Update), zur Docker Enterprise-Version zu wechseln, sich mit privaten Repositories zu verbinden oder den Docker-Daemon zu stoppen, bzw. neu zu starten. Außerdem kann man von hier aus auch zu „Windows containers“ zu wechseln, der nativen Microsoft-Implementation von Containern, der wir uns in einer der folgenden Teile zuwenden.

Die Installation und Inbetriebnahme der Docker Toolbox zeigen wir aufgrund des reichhaltigen Bildmaterials in der folgenden Bildergalerie.

Kommentare werden geladen....

Kommentar zu diesem Artikel

Der Kommentar wird durch einen Redakteur geprüft und in Kürze freigeschaltet.

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
  1. Avatar
    Avatar
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 45484092 / Container & Virtualisierung)