Häufig gestellte Fragen zu Containern

Wenn Sie eine Frage zu Windows Server-Containern haben, prüfen Sie, ob sie in der Liste unten beantwortet wird.

Worin besteht der Unterschied zwischen Linux- und Windows Server-Containern?

Linux- und Windows Server-Container implementieren beide ähnliche Technologien in ihrem Kernel und Kernbetriebssystemen. Der Unterschied ergibt sich aus der Plattform und Arbeitslasten, die innerhalb des Containers ausgeführt.

Wenn ein Kunde Windows Server-Container verwendet, ist eine Integration in vorhandene Windows-Technologien wie u. a. .NET, ASP.NET und PowerShell möglich.

Was sind die Voraussetzungen für die Ausführung von Containern unter Windows?

Container wurden mit Windows Server 2016 auf der Plattform eingeführt. Zum Verwenden von Containern benötigen Sie entweder Windows Server 2016 oder das Windows 10 Anniversary Update (Version 1607) oder höher. Weitere Informationen finden Sie in den Systemanforderungen.

Welche Windows--Betriebssysteme werden unterstützt?

AKS auf Azure Stack HCI verwendet Windows Server 2019 als Betriebssystemversion des Containerhosts und unterstützt nur Prozessisolation. Informationen zur Kompatibilität der Windows-Containerversion finden Sie unter Versionskompatibilität von Windows-Containern.

Wie kann ich meine Windows-Knoten patchen?

Für Windows Server-Knoten in AKS auf Azure Stack HCI muss ein Upgrade ausgeführt werden, um die neuesten Patchkorrekturen und Updates zu erhalten. Windows Updates sind auf den Windows-Knoten in AKS auf Azure Stack HCI nicht aktiviert. AKS auf Azure Stack HCI stellt Windows Updates jedoch zur Verfügung, indem die Images der Windows Server-Knoten regelmäßig aktualisiert werden.

Können meine Windows Server-Container gMSA verwenden?

Ja, gMSA wird bei in die Domäne eingebundenen Windows-Workerknoten unterstützt. Weitere Informationen zur Verwendung von gMSA mit Windows-Containern finden Sie unter Vorbereiten von Windows-Knoten für gMSA.

Was sind WCOW und LCOW?

WCOW ist die Abkürzung für „Windows Containers on Windows“. LCOW ist die Abkürzung für „Linux Containers on Windows“.

Wie werden Container lizenziert? Gibt es eine Einschränkung bezüglich der Anzahl von Containern, die ich ausführen kann?

Die EULA für Windows Containerimages beschreibt ein Nutzung, die verlangt, dass der Benutzer über ein Hostbetriebssystem mit einer gültigen Lizenz verfügt. Die Anzahl der Container, die ein Benutzer ausführen darf, hängt von der Edition des Hostbetriebssystems und dem Isolationsmodus ab, mit dem ein Container ausgeführt wird, sowie davon, ob diese Container zu Entwicklungs-/Testzwecken oder in der Produktion ausgeführt werden.

Hostbetriebssystem Grenzwert für prozessisolierte Container Grenzwert für Hyper-V-isolierte Container
Windows Server Standard Unbegrenzt 2
Windows Server Datacenter Unbegrenzt Unbegrenzt
Windows 10 Pro und Enterprise Unbegrenzt (nur für Test- oder Entwicklungszwecke) Unbegrenzt (nur für Test- oder Entwicklungszwecke)
Windows 10 IoT Core und Enterprise Unbegrenzt* Unbegrenzt*

Die Nutzung von Windows Server-Containerimages wird durch Lesen der Anzahl der Virtualisierungsgäste bestimmt, die für die betreffende Edition unterstützt werden.

Hinweis

*Die Verwendung von Containern in einer IoT-Edition von Windows ist abhängig davon, ob Sie die kommerziellen Nutzungsbedingungen von Microsoft für Windows 10 Core-Laufzeitimages oder der Windows 10 IoT Enterprise-Gerätelizenz („Kommerzielle Windows IoT-Vereinbarung“) zugestimmt haben. Zusätzliche Bestimmungen und Einschränkungen in den kommerziellen Windows-Vereinbarungen gelten für die Verwendung von Containerimages in einer Produktionsumgebung. Lesen Sie die Containerimage-EULA, um genau zu verstehen, was zulässig und was unzulässig ist.

Muss ich als Entwickler meine App für jeden Containertyp neu schreiben?

Nein Windows-Containerimages sind für Windows Server-Container und Hyper-V-Isolierung gleich. Die Auswahl des Containertyps erfolgt beim Starten des Containers. Aus Sicht des Entwicklers sind Windows Server-Container und Hyper-V-Isolierung zwei Varianten der gleichen Sache. Sie bieten die gleiche Entwicklungs-, Programmier- und Verwaltungserfahrung, sind offen und erweiterbar und beinhalten das gleiche Maß an Integration und Unterstützung wie Docker.

Ein Entwickler kann ein Containerimage unter Verwendung eines Windows Server-Containers erstellen und es in Hyper-V-Isolierung oder umgekehrt bereitstellen, ohne dass irgendwelche Änderungen vorgenommen werden müssen, außer der Angabe des entsprechenden Laufzeitflags.

Windows Server-Container bieten eine größere Dichte und Leistung, wenn es auf Geschwindigkeit ankommt, z. B. eine geringere Hochfahrzeit und eine schnellere Laufzeitleistung im Vergleich zu geschachtelten Konfigurationen. Die Hyper-V-Isolierung bietet, wie der Name schon sagt, eine stärkere Isolierung, die sicherstellt, dass Code, der in einem Container ausgeführt wird, das Hostbetriebssystem oder andere Container, die auf demselben Host ausgeführt werden, nicht kompromittieren oder beeinträchtigen kann. Dies ist hilfreich für mehrinstanzenfähige Szenarien (mit Anforderungen für das Hosten von nicht vertrauenswürdigem Code), einschließlich SaaS-Anwendungen und Computehosting.

Kann ich Windows-Container unter Windows 10 im prozessisolierten Modus ausführen?

Ab dem Windows 10-Update vom Oktober 2018 können Sie einen Windows-Container mit Prozessisolierung ausführen. Sie müssen jedoch zunächst Prozessisolierung direkt anfordern, indem Sie das Flag --isolation=process verwenden, wenn Sie Ihre Container mit docker run ausführen. Prozessisolierung ist mit Windows 10 Pro, Windows 10 Enterprise, Windows 10 IoT Core und Windows 10 IoT Enterprise kompatibel.

Wenn Sie Ihre Windows-Container auf diese Weise ausführen möchten, müssen Sie sicherstellen, dass auf dem Host Windows 10 Build 17763 und höher ausgeführt wird und Sie über eine Docker-Version mit der Engine 18.09 oder höher verfügen.

Warnung

Abgesehen von IoT Core- und IoT Enterprise-Hosts (nachdem Sie weitere Bestimmungen und Einschränkungen akzeptiert haben) ist dieses Feature nur für Entwicklung und Tests gedacht. Sie sollten weiterhin Windows Server als Host für Produktionsbereitstellungen verwenden. Wenn Sie diese Funktion verwenden, müssen Sie auch sicherstellen, dass die Host- und Containerversionstags übereinstimmen, da andernfalls der Container ggf. nicht gestartet wird oder nicht definiertes Verhalten aufweist.

Wie stelle ich meine Containerimages auf Air-Gap-Computern zur Verfügung?

Windows-Containerbasisimages enthalten Artefakte, deren Weitergabe durch eine Lizenz eingeschränkt ist. Wenn Sie mit diesen Images Builds erstellen und sie in eine private oder öffentliche Registrierung pushen, werden Sie feststellen, dass die Basisebene niemals gepusht wird Stattdessen wird das Konzept einer Fremdebene verwendet, die auf die tatsächliche Basisebene im Azure-Cloudspeicher verweist.

Dies kann die Dinge erschweren, wenn Sie einen Air-Gap-Computer verwenden, der nur Images von der Adresse Ihrer privaten Containerregistrierung abrufen kann. In diesem Fall funktioniert es nicht, der Fremdebene zu folgen, um das Basisimage abzurufen. Um das Verhalten der Fremdebene außer Kraft zu setzen, können Sie das --allow-nondistributable-artifacts-Flag im Docker-Daemon verwenden.

Wichtig

Die Verwendung dieses Flags schließt Ihre Verpflichtung nicht aus, die Bedingungen der Lizenz für Windows-Containerbasisimages einzuhalten. Sie dürfen keinen Windows-Inhalt für die öffentliche oder Drittanbieterverteilung bereitstellen. Die Verwendung in ihrer eigenen Umgebung ist zulässig.

Zusätzliches Feedback

Möchten Sie den FAQ etwas hinzufügen? Öffnen Sie im Abschnitt „Kommentare“ ein neues Issue für Feedback, oder richten Sie einen Pull Request für diese Seite mit GitHub ein.