Auf einem physischen oder virtuellen Server mit Windows Server 2025 lassen sich auch Container-Instanzen bereitstellen. Ideal geeignet sind hier Windows-Container. Auch Linux-Container sind möglich, aber in der Regel sind dann Linux-Server die günstigeren und besseren Hosts.
Die Bereitstellung eines Webservers in einem Container unter Windows Server 2025.
(Bild: Joos - Microsoft)
Die Stärke von Windows Server 2025 als Container-Host liegt klar im Betreiben von Windows-Containern, auf denen ebenfalls Windows-Server in verschiedenen Versionen in Betrieb sein können. Container lassen sich auch parallel mit VMs betreiben. Ein Container-Host kann somit auch gleichzeitig als Hyper-V-Host genutzt werden.
Container-Feature in Windows Server 2025 installieren
Damit ein Windows-Server als Container-Host genutzt werden kann, ist die Installation des Features "Container" notwendig. Das geht mit dem Server-Manager, mit dem Windows Admin Center oder mit der PowerShell über den Befehl:
Sollen Hyper-V-Container zum Einsatz kommen, ist auf dem Container-Host außerdem noch Hyper-V notwendig. Die Installation erfolgt zum Beispiel mit:
Install-WindowsFeature hyper-v
Docker-Container in Windows Server 2025 verwalten
Mit "docker images" lassen sich in der Befehlszeile die vorhandenen Images anzeigen, mit denen Admins Container erstellen können. Um Container-Images für Windows Server 2025 oder Windows Server 2022 herunterzuladen, kommen zum Beispiel folgende Befehle zum Einsatz:
Danach lassen sich neue Container auf Basis dieser Images bereitstellen, zum Beispiel mit:
docker run mcr.microsoft.com/windows/servercore:ltsc2025
Mit dem Docker-Client kann im Docker-Hub nach Images gesucht werden. Dazu verwendet man zum Beispiel den Befehl:
docker search Microsoft
Um beispielsweise einen Container bereitzustellen, der das Nano-Image von Windows Server 2022 nutzt und darin eine Befehlszeile mitbringt, lässt sich dieser Befehl verwenden:
docker run -it mcr.microsoft.com/windows/nanoserver:ltsc2022 cmd.exe
Sobald der Container erstellt wurde, können Admins ihn in der Befehlszeile mit der Eingabeaufforderung und der PowerShell verwalten. Um sich eine Liste aller Container auf einem Container-Host anzuzeigen kann der folgende Befehl genutzt werden:
docker ps -a
Um zum Beispiel einen Container bereitzustellen, der einen Webserver auf Basis von IIS und Windows Server 2025 im Netzwerk integriert, reicht dieser Befehl:
docker run -it --name winiis -p 80:80 mcr.microsoft.com/windows/servercore:ltsc2025
Innerhalb des Containers kann die PowerShell zum Einsatz kommen. Hier lässt sich überprüfen, ob IIS im Container zur Verfügung steht. Ist das nicht der Fall, lässt sich die Installation innerhalb des Containers durchführen:
Die Befehle unterscheiden sich daher nicht von der Installation des IIS auf einem herkömmlichen Server mit Windows Server 2022/2025.
Das steckt hinter Hyper-V-Containern
Während sich herkömmliche Container Teile des Host-Betriebssystems teilen und damit durchaus etwas voneinander abhängig und weniger getrennt sind als gewünscht, ist das bei Hyper-V-Containern anders. Herkömmliche Container und Hyper-V-Container unterscheiden sich vor allem in der Art der Isolierung. Herkömmliche Container nutzen den Kernel des Host-Systems gemeinsam und sind voneinander durch Namespace- und Cgroup-Technologien getrennt, was eine effiziente Ressourcennutzung ermöglicht, aber gleichzeitig bedeutet, dass alle Container denselben Kernel verwenden.
Hyper-V-Container hingegen laufen innerhalb einer eigenen, leichtgewichtigen virtuellen Maschine, die über den Hyper-V-Hypervisor bereitgestellt wird. Dadurch erhält jeder Hyper-V-Container eine vollständige Kernel-Isolation, sodass ein kompromittierter Container nicht direkt das Host-System oder andere Container gefährden kann.
Während herkömmliche Container sich ideal für Szenarien eignen, in denen eine hohe Dichte und schnelle Bereitstellung wichtig sind, bieten Hyper-V-Container eine zusätzliche Sicherheitsebene und sind insbesondere in Multi-Tenant-Umgebungen oder bei der Ausführung von nicht vertrauenswürdigen Workloads von Vorteil.
Um in der Befehlszeile, in der PowerShell oder mit Docker zu ermitteln, ob ein Windows-Container oder ein Hyper-V-Container auf einem Windows Server ausgeführt wird, kann der Befehl „docker inspect <Container-ID>“ genutzt werden. In der Ausgabe dieses Befehls findet sich der Parameter "HostConfig": {"Isolation": "<isolation-mode>"}, wobei <isolation-mode> entweder „process“ für herkömmliche Windows-Container oder „hyperv“ für Hyper-V-Container angibt. Alternativ lässt sich die Isolationsstufe beim Start eines Containers direkt mit dem Parameter „--isolation=<mode>“ festlegen, wobei „process“ für Windows-Container und „hyperv“ für Hyper-V-Container zur Verfügung steht.
Um Container nachträglich als Hyper-V-Container zu isolieren, reicht es aus, die Markierung „-isolation=hyperv“ zu setzen:
Stand: 08.12.2025
Es ist für uns eine Selbstverständlichkeit, dass wir verantwortungsvoll mit Ihren personenbezogenen Daten umgehen. Sofern wir personenbezogene Daten von Ihnen erheben, verarbeiten wir diese unter Beachtung der geltenden Datenschutzvorschriften. Detaillierte Informationen finden Sie in unserer Datenschutzerklärung.
Einwilligung in die Verwendung von Daten zu Werbezwecken
Ich bin damit einverstanden, dass die Vogel IT-Medien GmbH, Max-Josef-Metzger-Straße 21, 86157 Augsburg, einschließlich aller mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen (im weiteren: Vogel Communications Group) meine E-Mail-Adresse für die Zusendung von Newslettern und Werbung nutzt. Auflistungen der jeweils zugehörigen Unternehmen können hier abgerufen werden.
Der Newsletterinhalt erstreckt sich dabei auf Produkte und Dienstleistungen aller zuvor genannten Unternehmen, darunter beispielsweise Fachzeitschriften und Fachbücher, Veranstaltungen und Messen sowie veranstaltungsbezogene Produkte und Dienstleistungen, Print- und Digital-Mediaangebote und Services wie weitere (redaktionelle) Newsletter, Gewinnspiele, Lead-Kampagnen, Marktforschung im Online- und Offline-Bereich, fachspezifische Webportale und E-Learning-Angebote. Wenn auch meine persönliche Telefonnummer erhoben wurde, darf diese für die Unterbreitung von Angeboten der vorgenannten Produkte und Dienstleistungen der vorgenannten Unternehmen und Marktforschung genutzt werden.
Meine Einwilligung umfasst zudem die Verarbeitung meiner E-Mail-Adresse und Telefonnummer für den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern wie z.B. LinkedIN, Google und Meta. Hierfür darf die Vogel Communications Group die genannten Daten gehasht an Werbepartner übermitteln, die diese Daten dann nutzen, um feststellen zu können, ob ich ebenfalls Mitglied auf den besagten Werbepartnerportalen bin. Die Vogel Communications Group nutzt diese Funktion zu Zwecken des Retargeting (Upselling, Crossselling und Kundenbindung), der Generierung von sog. Lookalike Audiences zur Neukundengewinnung und als Ausschlussgrundlage für laufende Werbekampagnen. Weitere Informationen kann ich dem Abschnitt „Datenabgleich zu Marketingzwecken“ in der Datenschutzerklärung entnehmen.
Falls ich im Internet auf Portalen der Vogel Communications Group einschließlich deren mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen geschützte Inhalte abrufe, muss ich mich mit weiteren Daten für den Zugang zu diesen Inhalten registrieren. Im Gegenzug für diesen gebührenlosen Zugang zu redaktionellen Inhalten dürfen meine Daten im Sinne dieser Einwilligung für die hier genannten Zwecke verwendet werden. Dies gilt nicht für den Datenabgleich zu Marketingzwecken.
Recht auf Widerruf
Mir ist bewusst, dass ich diese Einwilligung jederzeit für die Zukunft widerrufen kann. Durch meinen Widerruf wird die Rechtmäßigkeit der aufgrund meiner Einwilligung bis zum Widerruf erfolgten Verarbeitung nicht berührt. Um meinen Widerruf zu erklären, kann ich als eine Möglichkeit das unter https://contact.vogel.de abrufbare Kontaktformular nutzen. Sofern ich einzelne von mir abonnierte Newsletter nicht mehr erhalten möchte, kann ich darüber hinaus auch den am Ende eines Newsletters eingebundenen Abmeldelink anklicken. Weitere Informationen zu meinem Widerrufsrecht und dessen Ausübung sowie zu den Folgen meines Widerrufs finde ich in der Datenschutzerklärung.
docker run -it --isolation=hyperv mcr.microsoft.com/windows/nanoserver:ltsc2025 cmd.exe
Container mit der PowerShell verwalten
Windows Server Container lassen sich über die PowerShell effizient verwalten, auch auf lokal installierten Container-Hosts. Eine neue PowerShell-Sitzung wird direkt über die Befehlszeile gestartet. Sobald ein Container läuft, kann eine Verbindung zu diesem aufgebaut werden, um Konfigurationen und Serverdienste innerhalb des Containers zu steuern. Dafür ist die Container-ID erforderlich, die sich mit „docker ps“ ermitteln lässt.
Die Verbindung zum Container erfolgt über „Enter-PSSession“, wobei die Container-ID und die Option „-RunAsAdministrator“ angegeben werden. Der Container erhält eine eigene IP-Adresse, um mit dem Netzwerk oder dem Internet zu kommunizieren. Der entsprechende Befehl lautet:
Alle eingegebenen Befehle werden innerhalb des Containers ausgeführt. Mit „exit“ wird die Sitzung beendet, sodass wieder auf dem Container-Host gearbeitet wird.
Virtuelle Switches auf dem Host spielen bei der Container-Erstellung eine zentrale Rolle, da Container über diese mit dem Netzwerk verbunden sind. Die vorhandenen virtuellen Switches lassen sich mit „Get-VMSwitch“ anzeigen.
Sitzungen innerhalb von Containern können unterbrochen und später wiederhergestellt werden, wobei laufende Cmdlets in der Sitzung weiterhin ausgeführt werden. Dafür stehen die Cmdlets Disconnect-PSSession, Connect-PSSession und Receive-PSSession zur Verfügung. Soll über eine lokale PowerShell-Sitzung ein Programm in einem Container gestartet werden, geschieht dies über „Invoke-Command“. Die Syntax lautet: