Zu Windows-Containern wechseln (nur Windows)
In diesem Schritt besprechen wir den Wechsel zu Windows-Containern. Bitte beachten Sie, dass dieser Schritt nur relevant ist, wenn Sie Docker Desktop auf einem Windows-Betriebssystem ausführen. Die LabEx-Umgebung ist eine Linux-Virtual Machine, daher kann dieser Wechsel hier nicht tatsächlich durchgeführt werden. Dennoch ist das Verständnis dieses Konzepts wichtig, wenn Sie mit Docker unter Windows arbeiten.
Unter Windows läuft Docker Desktop standardmäßig in einer kleinen Linux-Virtual Machine, die den Docker-Engine hostet und Linux-Container ausführt. Dies liegt daran, dass der Docker-Engine ursprünglich für Linux entwickelt wurde. Windows unterstützt jedoch auch native Windows-Container.
Wenn Sie auf einem Windows-Rechner mit installiertem Docker Desktop wären, würden Sie typischerweise durch Rechtsklick auf das Docker-Symbol im System-Tray und Auswahl von "Switch to Windows containers" zu Windows-Containern wechseln. Diese Aktion würde den Docker-Daemon so konfigurieren, dass er die Windows-Container-Runtime anstelle der Linux-VM verwendet.
Nach dem Wechsel zu Windows-Containern könnten Sie dann Images für Windows pullen und ausführen, wie z.B. mcr.microsoft.com/windows/nanoserver
.
Beispielsweise könnten Sie auf einem Windows-Rechner nach dem Wechsel folgendes ausführen:
docker pull mcr.microsoft.com/windows/nanoserver
docker run mcr.microsoft.com/windows/nanoserver cmd /c echo Hello from Windows Container!
Die Ausgabe wäre:
Hello from Windows Container!
Da Sie sich in einer Linux-Umgebung befinden, würde der Versuch, Windows-Container-Images zu pullen oder auszuführen, fehlschlagen. Der Docker-Engine in dieser Linux-VM kann keine Windows-Container ausführen.
Lassen Sie uns dies demonstrieren, indem wir versuchen, ein Windows-Image zu pullen.
docker pull mcr.microsoft.com/windows/nanoserver
Sie werden wahrscheinlich eine Fehlermeldung sehen, die anzeigt, dass das Image nicht gefunden werden kann, da der Docker-Daemon nach einem Linux-Image mit diesem Namen sucht.
Using default tag: latest
Error response from daemon: manifest for mcr.microsoft.com/windows/nanoserver:latest not found: manifest unknown: manifest unknown
Dies bestätigt, dass die aktuelle Umgebung für Linux-Container konfiguriert ist und keine Windows-Container ausführen kann.
Daher gibt es in dieser LabEx-Umgebung keine praktischen Befehle zum Wechseln zu Windows-Containern. Dieser Schritt dient als konzeptionelle Information für Benutzer, die möglicherweise mit Docker unter Windows arbeiten.