Erste Schritte: Vorbereiten von Windows für Container
Gilt für: Windows Server 2022, Windows Server 2019, Windows Server 2016, Windows 10 und 11
In diesem Tutorial wird Folgendes beschrieben:
Voraussetzungen
Windows 10 und 11
Zum Ausführen von Containern unter Windows 10 oder 11 benötigen Sie Folgendes:
- Ein physisches Computersystem mit Windows 10 oder 11 Professional oder Enterprise mit Anniversary Update (Version 1607) oder höher
- Hyper-V sollte aktiviert sein.
Hinweis
Ab dem Windows 10-Update von Oktober 2018 verbietet Microsoft die Ausführung von Windows-Containern im Prozessisolationsmodus unter Windows 10 Enterprise oder Professional für Entwicklungs-/Testzwecke durch Benutzer nicht mehr. Weitere Informationen finden Sie in den FAQ.
Windows Server-Container verwenden standardmäßig Hyper-V-Isolation unter Windows 10 und 11, damit Entwickler die gleiche Kernelversion und -konfiguration nutzen können, die in der Produktion verwendet wird. Weitere Informationen zur Hyper-V-Isolation finden Sie unter Isolationsmodi.
Windows Server
Für Entwicklungsumgebungen benötigen Sie zum Ausführen von Windows Server-Containern einen physischen Server oder einen virtuellen Computer, auf dem Windows Server ausgeführt wird.
Zum Testen können Sie eine Kopie von Windows Server 2022 Evaluation oder eine Windows Server Insider-Vorschau herunterladen.
Containerfähige Azure-VMs
Für viele Anwendungen und Orchestrierungsparadigmen ist es erforderlich, eigene benutzerdefinierte VMs zu erstellen und bereitzustellen. Mit dem Übergang des Supports für die Windows Container-Laufzeit zu Mirantis wird die Containerlaufzeit nicht mehr mit einem Marketplace-VM-Angebot bereitgestellt. Der Rest dieses Leitfadens enthält Details dazu, wie Sie eine VM für Azure erstellen können, wobei die Containerlaufzeit installiert und einsatzbereit gemacht wird.
Azure bietet weiterhin eine umfassende und vollständig verwaltete End-to-End-Erfahrung über Azure Kubernetes Service sowohl in der Cloud als auch lokal. AKS und AKS-HCI sind vollständig verwaltete Dienste mit geringerem Verwaltungsaufwand als für benutzerdefinierte Bereitstellungen. Support für die Containerlaufzeit ist in den AKS- und AKS-HCI-Diensten unter Ihrem Azure-Abonnement enthalten.
Es gibt drei Dinge, die Sie berücksichtigen sollten, wenn Sie die folgenden Optionen erwägen. Es liegt an Ihrer Organisation, zu entscheiden, welchen Aspekt Sie optimieren möchten:
- Wie komplex ist die Implementierung?
- Welche Kosten entstehen?
- Was sind die Auswirkungen auf meine Workload in der Produktion?
Jede dieser Methoden wird als Option bereitgestellt, um das Erstellen ihrer containerfähigen Azure-VMs so reibungslos wie möglich zu gestalten. In den folgenden Unterabschnitten werden die Vor- und Nachteile jeder Option zusammen mit den ersten Schritten erläutert.
Azure Image Builder
Der Vorteil der Verwendung von Image Builder besteht darin, dass die Konfiguration während der Buildzeit erfolgt und keine Auswirkungen auf Ihre Workload zur Laufzeit hat. Wenn die VM-Skalierungsgruppe eine neue VM aus Ihrem benutzerdefinierten Image instanziiert, wurde das Image bereits vorbereitet, sodass hier keine Zeit aufgewendet werden muss und es sofort bereit ist, Container auszuführen.
Die Implementierung von Azure Image Builder kann jedoch komplexer sein, und es sind mehr Schritte erforderlich als bei Skripterweiterungen. Außerdem ist der Image Builder-Dienst zwar kostenlos, aber Sie müssen für die mit dem Erstellungsprozess verbundene Rechen-, Speicher- und Netzwerknutzung aufkommen (weitere Details hier).
Zum Einstieg in das Erstellen Ihres eigenen Windows Server-VM-Images haben wir einen Leitfaden erstellt, der den Prozess Schritt für Schritt beschreibt. Die unten aufgeführten PowerShell-Skripts können zusammen mit diesem Leitfaden verwendet werden, um die Containerlaufzeitumgebung Ihrer Wahl zu installieren.
Tipp
Achten Sie darauf, die Container-Images, die Sie verwenden möchten, lokal auf der VM zwischenzuspeichern! Dadurch werden die Container nach der Bereitstellung schneller gestartet. Die folgenden Skripts helfen Ihnen dabei.
Benutzerdefinierte Skripterweiterungen
Benutzerdefinierte Skripterweiterungen sind schneller zu implementieren und die Kosten belaufen sich nur auf den Nominalpreis für die Speicherung des Skripts in Azure oder GitHub. Allerdings kann das Skript erst ausgeführt werden, nachdem eine VM bereitgestellt wurde. Sie müssen also zusätzliche Zeit für die ordnungsgemäße Vorbereitung der VM zum Zeitpunkt der horizontalen Skalierung einplanen.
Mit den unten angebotenen Skripts können Sie Ihre VM-Skalierungsgruppen so konfigurieren, dass die Containerlaufzeitumgebung Ihrer Wahl bei der Bereitstellung installiert wird. In unserem Leitfaden erfahren Sie, wie eine benutzerdefinierte Skripterweiterung eingerichtet wird.
Installieren der Containerlaufzeit
Windows 10 und 11
Mithilfe der folgenden Schritte können Sie Docker unter Windows 10 oder 11 Professional und Enterprise Edition installieren:
Laden Sie Docker Desktop herunter, installieren Sie die Anwendung, und erstellen Sie ein Docker-Konto, wenn Sie noch kein Konto besitzen. Sie können ein kostenloses Docker-Konto für private Benutzer oder kleine Unternehmen erstellen. Für größere Unternehmen fällt jedoch eine monatliche Gebühr an. Weitere Informationen finden Sie in der Docker-Dokumentation.
Legen Sie während der Installation den Standardcontainertyp auf Windows-Container fest. Wenn Sie den Typ nach Abschluss der Installation ändern möchten, können Sie entweder das Docker-Element in der Windows-Taskleiste (wie unten gezeigt) oder den folgenden Befehl in einer PowerShell-Eingabeaufforderung verwenden:
& $Env:ProgramFiles\Docker\Docker\DockerCli.exe -SwitchDaemon .
Windows Admin Center
Sie können Windows Admin Center verwenden, um einen Windows Server-Computer ordnungsgemäß als Containerhost einzurichten. Stellen Sie zunächst sicher, dass auf Ihrer Windows Admin Center-Instanz die neueste Containererweiterung installiert ist. Weitere Informationen zum Installieren und Konfigurieren von Erweiterungen finden Sie in der Dokumentation zum Windows Admin Center. Richten Sie bei installierter Containererweiterung den Windows Server-Computer ein, den Sie konfigurieren möchten, und wählen Sie die Option „Container“ aus:
Klicken Sie auf die Schaltfläche Installieren. Windows Admin Center startet die Konfiguration von Windows Server und Docker im Hintergrund. Nachdem der Vorgang abgeschlossen wurde, können Sie die Seite aktualisieren und die anderen Funktionen der Containererweiterung anzeigen.
Windows Server
Um einen Windows-Container auszuführen, müssen Sie über eine unterstützte Containerlaufzeit auf Ihrem Computer verfügen. Die derzeit unter Windows unterstützten Laufzeiten sind containerd, Moby und Mirantis Container Runtime.
In diesem Abschnitt wird der Prozess der Installation der einzelnen Elemente auf Ihrer spezifischen Kopie von Windows erläutert, einschließlich einer Reihe von PowerShell-Skripts, die die Installation jeder Laufzeit in nur wenigen Schritten erleichtern.
Docker Community Edition (CE) bietet eine Standardlaufzeitumgebung für Container mit einer gemeinsamen API und Befehlszeilenschnittstelle (CLI). Sie wird von der Open Source-Community im Rahmen des Moby-Projekts verwaltet.
Für den Einstieg in Docker unter Windows Server haben wir ein PowerShell-Skript erstellt, das Ihre Umgebung so konfiguriert, dass containerbezogene Betriebssystemfunktionen aktiviert und die Docker-Laufzeitumgebung installiert werden.
Invoke-WebRequest -UseBasicParsing "https://raw.githubusercontent.com/microsoft/Windows-Containers/Main/helpful_tools/Install-DockerCE/install-docker-ce.ps1" -o install-docker-ce.ps1
.\install-docker-ce.ps1
Weitere Informationen zur Konfiguration finden Sie unter Docker-Engine unter Windows.
Nächste Schritte
Hinweis
Wenn Sie diesen Leitfaden gelesen haben und weitere Ratschläge vom Produktteam für Windows-Container wünschen, erreichen Sie uns unter github/Windows-Containers. Dort finden Sie Informationen zum Vereinbaren eines Chattermins mit dem Produktteam.
Nachdem Sie Ihre Umgebung ordnungsgemäß konfiguriert haben, folgen Sie dem Link, um zu erfahren, wie ein Container ausgeführt wird.