Containerbasisimages

Gilt für: Windows Server 2022, Windows Server 2019, Windows Server 2016

Windows bietet vier Containerbasisimages, die Benutzer für die Erstellung verwenden können. Jedes Basisimage stellt einen anderen Typ des Windows- oder Windows Server-Betriebssystems dar, hat einen anderen Speicherbedarf auf dem Datenträger und enthält eine andere Teilmenge des Windows-API-Satzes.

Imageermittlung

Alle Windows-Containerbasisimages können über Docker Hub ermittelt werden. Die Windows-Containerbasisimages selbst werden von mcr.microsoft.com, der Microsoft Container Registry (MCR), bereitgestellt. Aus diesem Grund sehen die Pull-Befehle für die Windows-Containerbasisimages wie folgt aus:

docker pull mcr.microsoft.com/windows/servercore:ltsc2022

Die MCR weist keine eigene Katalogoberfläche auf und dient lediglich zur Ergänzung bestehender Kataloge wie Docker Hub. Dank der globalen Präsenz von Azure und in Verbindung mit dem Azure CDN liefert die MCR ein konsistentes und schnelles Pull-Erlebnis für Bilder. Azure-Kunden, die ihre Workloads in Azure ausführen, profitieren von Leistungsverbesserungen im Netzwerk sowie von der engen Integration mit der MCR (der Quelle für Microsoft-Containerimages), dem Azure Marketplace und der wachsenden Zahl von Diensten in Azure, die Container als Bereitstellungspaketformat anbieten.

Auswählen eines Basisimages

Wie wählen Sie das richtige Basisimage als Grundlage für die Erstellung aus? Für die meisten Benutzer werden Windows Server Core und Nanoserver die am besten geeigneten Images sein. Jedes Basisimage wird unten kurz beschrieben:

  • Nano Server ist ein ultraschlankes Windows für die Entwicklung neuer Anwendungen.
  • Server Core hat mittlere Größe und ist eine gute Option für das „Lift-and-Shift“ von Windows Server-Apps.
  • Windows ist das größte Image und weist umfassende Windows API-Unterstützung für Workloads auf.
  • Windows Server ist etwas kleiner als das Windows-Image, besitzt umfassende Windows API-Unterstützung und ermöglicht Ihnen die Verwendung von mehr Serverfunktionen.

Richtlinien

Zwar steht Ihnen die Wahl des Ziel-Images frei, hier finden Sie aber einige Richtlinien, die Ihnen bei der Auswahl helfen sollen:

  • Benötigt Ihre Anwendung das vollständige .NET-Framework? Wenn die Antwort auf diese Frage „Ja“ lautet, sollten Sie Windows Server Core als Ziel wählen.
  • Erstellen Sie eine Windows-App auf der Basis von .NET Core? Wenn die Antwort auf diese Frage „Ja“ lautet, sollten Sie Nanoserver als Ziel wählen.
  • Fehlt dem Windows Server Core-Containerimage eine Abhängigkeit, die Ihre App benötigt? Wenn die Antwort auf diese Frage „Ja“ lautet, sollten Sie versuchen, Windows als Ziel auszuwählen. Dieses Image ist viel größer als die anderen Basisimages, aber es enthält viele der Windows-Kernbibliotheken (z. B. die GDI-Bibliothek).
  • Sind Sie ein Windows-Insider? In diesem Fall sollten Sie erwägen, die Insider-Version der Images zu verwenden. Weitere Informationen finden Sie weiter unten unter „Basisimages für Windows Insider“.
  • Benötigen Sie Unterstützung von GPU-Beschleunigung für Ihre Containerworkloads? Wenn ja, sollten Sie die Verwendung des Windows Server-Images in Betracht ziehen, um Hardwarebeschleunigung für Ihre Windows-Containerworkloads einzubeziehen.

Tipp

Viele Windows-Benutzer möchten Anwendungen, die von .NET abhängig sind, containerisieren. Zusätzlich zu den vier hier beschriebenen Basisimages veröffentlicht Microsoft mehrere Windows-Containerimages, die mit gängigen Microsoft-Frameworks vorkonfiguriert sind, z. B. das .NET-Framework-Image und das ASP.NET-Image.

Windows im Vergleich mit Windows Server

Das Windows Server-Image (3,1 GB) ist geringfügig kleiner als das Windows-Image (3,4 GB). Das Windows Server-Image erbt darüber hinaus alle Verbesserungen bei Leistung und Zuverlässigkeit vom Server Core-Image, bietet GPU-Unterstützung und uneingeschränkte IIS-Verbindungen. Zum Verwenden des neuesten Windows Server-Bilder benötigen Sie eine Windows Server 2022-Installation. Das Windows-Image ist für Windows Server 2022 nicht verfügbar.

Basisimages für Windows-Insider

Microsoft stellt „Insider“-Versionen von jedem Containerbasisimage zur Verfügung. Diese Insider-Containerimages enthalten die neueste und größte Featureentwicklung in unseren Containerimages. Wenn Sie einen Host ausführen, der eine Insider-Version von Windows ist (entweder Windows-Insider oder Windows Server-Insider), sollten Sie vorzugsweise diese Images verwenden. Die folgenden Insider-Images sind auf Docker Hub verfügbar:

Weitere Informationen finden Sie unter Verwenden von Containern mit dem Windows-Insider-Programm.

Windows Server Core im Vergleich zu Nanoserver

Windows Server Core und Nanoserver sind die am häufigsten verwendeten Basisimages. Der Hauptunterschied zwischen diesen Images besteht darin, dass Nanoserver eine wesentlich kleinere API-Oberfläche hat. PowerShell, WMI und der Windows-Bereitstellungsstapel sind im Nanoserver-Image nicht vorhanden.

Nanoserver wurde entwickelt, um gerade genug API-Oberfläche für die Ausführung von Apps zu bieten, die von .NET Core oder anderen modernen Open-Source-Frameworks abhängig sind. Als Kompromiss zu der kleineren API-Oberfläche hat das Nanoserver-Image einen wesentlich kleineren Speicherbedarf als der Rest der Windows-Basisimages. Aufbauend auf Nano Server können Sie nach Bedarf jederzeit Ebenen hinzufügen. Ein Beispiel hierfür finden Sie unter .NET Core Nano Server Dockerfile.