Tags: Windows 10, Container, Hyper-V
Wer Anwendungen für Docker-Container entwickeln oder einfach nur einen ersten Eindruck von diesem Feature gewinnen will, muss dafür keinen Windows Server aufsetzen. Seit dem Release 1607 unterstützt auch Windows 10 x64 (Pro und Enterprise) Container. Die folgende Anleitung zeigt, wie man sie einrichtet.
Windows Server kennt zwei verschiedene Implementierungen von Containern, nämlich Windows Server Container und Hyper-V Container (siehe dazu Container in Windows Server 2016: Funktionsweise, Typen, Anwendungen). Bei der ersten Variante teilen sich das Host-OS und die Container einen Kernel.
Support nur für Hyper-V Container
Nachdem die Container-Images für Windows auf Server Core oder Nano Server beruhen, können Container nicht den Kernel des Hosts-Betriebssystems nutzen, wenn es sich dabei um Windows 10 handelt. Daher unterstützt Microsoft auf einer Workstation nur Hyper-V Container, bei dem eine Magervariante des Server-OS in einer VM läuft.
Führt man Windows 10 selbst in einer VM aus, dann benötigt man daher für Container eine Konfiguration für Nested Virtualization. Diese kann man etwa mittels VMware Workstation oder einer neuen Version von Hyper-V bereitstellen (siehe dazu: Hyper-V in einer Hyper-V-VM installieren).
Hyper-V und Container als Features aktivieren
Aus diesem Grund besteht die erste Voraussetzung für Container darin, dass man das Feature Hyper-V aktiviert. Möchte man das über die GUI tun, dann beschreibt diese Anleitung, wie man vorgeht. Alternativ öffnet man eine PowerShell-Konsole mit administrativen Rechten und gibt folgenden Befehl ein:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
Anschließend ist ein Neustart erforderlich.
Im nächsten Schritt fügt man das Feature Container hinzu. Das geht ebenfalls über die Systemsteuerung unter Programme => Windows-Features aktivieren oder deaktivieren. In PowerShell erledigt
Enable-WindowsOptionalFeature -Online -FeatureName Containers -All
diese Aufgabe.
Docker-Modul herunterladen und installieren
Nun sind unter Windows 10 die Vorbereitungen abgeschlossen und man kann sich daran machen, die Docker-Engine und den dazugehörigen Client zu installieren. Beide gehören nicht zum Lieferumfang des Betriebssystems, sondern müssen von der Docker-Website heruntergeladen werden.
Der Hersteller bietet neben der stabilen auch eine Entwicklerversion an, für beide existiert mittlerweile ein MSI-Installer. Nachdem dieser durchgelaufen ist, bietet der letzte Dialog an, Docker gleich zu starten. Dies kann allerdings fehlschlagen, wobei folgende Fehlermeldung erscheint:
Docker hv-sock proxy (vsudd) is not reachable
at Docker.Backend.ContainerEngine.Linux.ConnectToVsud(TaskCompletionSource`1 vmId)
at Docker.Backend.ContainerEngine.Linux.DoStart(Settings settings)
at Docker.Backend.ContainerEngine.Linux.Start(Settings settings)
at Docker.Core.Pipe.NamedPipeServer.<>c__DisplayClass8_0.b__0(Object[] parameters)
at Docker.Core.Pipe.NamedPipeServer.RunAction(String action, Object[] parameters)
Sie wird offenbar dadurch verursacht, dass der Installer das Programm nicht mit ausreichenden Rechten ausführt. Normalerweise lässt sich das Problem beheben, indem man Docker anschließend explizit als Administrator startet.
Sobald der Docker-Service läuft, lässt sich dieser über das Icon im System-Tray verwalten. Per Voreinstellung ist er für Linux-Container konfiguriert. Wenn man Basis-Images für Windows Server einsetzen möchte, dann muss man hier den Befehl Switch to Windows containers ausführen.
Basis-Images herunterladen und testen
Nun kann man auf eine Kommandozeile wechseln und den Client durch Eingabe von docker öffnen. Er stellt die nötigen Befehle zur Verfügung, um Images herunterzuladen und Container zu starten.
Zuerst sollte man sich durch das Kommando
docker version
davon überzeugen, dass der Docker-Service läuft.
Um ein Basis-Image herunterzuladen, gibt man für Nano Server
docker pull microsoft/nanoserver
und für Server Core
docker pull microsoft/windowsservercore
ein.
Der Befehl docker images bestätigt nach Abschluss des Vorgangs, dass die heruntergeladenen Basis-Images auf dem System vorhanden sind. Nun kann man sich daran machen, etwa einen Container auf Basis von Nano Server zu starten:
docker run -it microsoft/nanoserver cmd
Dieses Kommando startet einen Container auf Basis des Nano-Images in einer interaktiven Session und öffnet dort die Eingabeaufforderung.
Dies könnte ein erster Schritt sein zur Erstellung eines eigenen Container-Images.
Täglich Know-how für IT-Pros mit unserem Newsletter
Ähnliche Beiträge
- Docker-Container im Subsystem für Linux 2 (WSL 2) ausführen
- Windows Admin Center v2009: Erweitertes Management von Hyper-V und File-Services, Docker-Installation
- VMware Workstation 15.5.5: kostenloses Upgrade, eingeschränkte Nested Virtualization
- Einstellungen für Windows Sandbox (Netzwerk, Scripts, Transferordner) konfigurieren mit kostenlosem GUI-Tool
- Windows 10 Sandbox installieren, isolierte Umgebung ausführen
Weitere Links