Laden...

Docker unter Windows 10 ohne Hyper-V

Erstellt von Krumnix vor 4 Jahren Letzter Beitrag vor 4 Jahren 1.797 Views
K
Krumnix Themenstarter:in
129 Beiträge seit 2018
vor 4 Jahren
Docker unter Windows 10 ohne Hyper-V

Hallo.

Ich würde gerne Docker unter Windows 10 einsetzen. Dazu wird ja ein virtuelles System aufgesetzt, in dem ein Linux läuft und dort dann Docker genutzt.
Dieses virtuelle System benötigt Hyper-V.
Leider läuft auf dem System, auf dem ich Docker nutzen möchte, eine andere virtuelle Umgebung, welche Hyper-V nutzt. Dieses System stellt SPS-Funktionen zur Verfügung.

Nun stellt sich mir die Frage, wie ich Docker ohne Hyper-V unter Windows zum laufen bekomme?!

Könnte man unter VM-Ware ein Linux-Image starten und dort Docker nutzen?
VM-Ware mit Windows 7 habe ich auch diesem PC am laufen.

Oder gibt es einen anderen Trick, mit dem ich Docker ohne Hyper-V nutzen kann?

Danke!

1.029 Beiträge seit 2010
vor 4 Jahren

Hi,

was meinst du denn genau mit VMWare? Player? Esxi? vSphere?

Naja - wenn du ein Linux-Image gestartet bekommst - kannst du darauf jedenfalls auch Docker laufen lassen...

LG

16.806 Beiträge seit 2008
vor 4 Jahren

Dieses virtuelle System benötigt Hyper-V.

Mit 1806 und vorher ja; in Zukunft wird das Linux Subsystem v2 verwendet - ohne Hyper-V.

Nun stellt sich mir die Frage, wie ich Docker ohne Hyper-V unter Windows zum laufen bekomme?!

Gar nicht (so einfach).

Es ist in Windows nur einem einzigen System gestattet VT-x zu verwenden.
Das bedeutet, dass auf einem System, auf dem Hyper-V läuft, keine zweitere Virtualisierungsumgebung läuft.

Wenn Du aber ohnehin Hyper-V hast, dann kannst ja problemlos Docker for Windows mit Hyper-V nutzen.
Du kannst aber auf der Maschine kein VirtualBox oder VMware.. nutzen. Nicht möglich.
Und ohne Virtualisierungsumgebung geht kein Docker (Linux) auf einer Windows Kiste (<1806).

Letzte Möglichkeit wäre dann nur eine externe Maschine, auf der Du Docker installierst, und die Docker Machine entsprechend lokal registrierst; quasi Remote Execution der Docker CLI.

K
Krumnix Themenstarter:in
129 Beiträge seit 2018
vor 4 Jahren

Hab leider ein Win 10 2016 LTSB auf dem Gerät.
Das schränkt die Sache wohl ein.
Hyper-V ist aktiv und der SPS-Kontroller läuft.
Wenn ich dann Docker starte, sagt er mir, das Hyper-V nicht aktiv wäre, ist es aber.

16.806 Beiträge seit 2008
vor 4 Jahren

Docker oder Docker for Windows (bzw. ja mittlerweile ja Docker Desktop)?

P
441 Beiträge seit 2014
vor 4 Jahren

Hyper-V ist aktiv und der SPS-Kontroller läuft.
Wenn ich dann Docker starte, sagt er mir, das Hyper-V nicht aktiv wäre, ist es aber.

Das kann so nicht passen. Docker CE für Windows ist durchaus in der Lage sich ein aktives Hyper-V mit anderen VM's zu teilen.
Mache ich auf meinem Entwicklungsrechner genauso.

-> Ist Hyper-V aktiv, wenn du unter Systemsteuerung > Programme > Optionale Windows Features schaust oder nutzt die SPS nicht Hyper-V sondern einen anderen Hypervisor?

Alternativ, aber hacky:
Eine Linux VM im aktiven Hypervisor installieren und dort Docker nutzen.

K
Krumnix Themenstarter:in
129 Beiträge seit 2018
vor 4 Jahren

Docker für Windows (Desktop).

Hyper-V ist eingeschaltet. Den Hyper-V Manager kann ich öffnen.

Jedoch behauptet Docker immer, dass ich Hyper-V anschalten soll, sobald ich die andere Application installiert habe, die auch Hyper-V braucht.

Da das andere Programm zwingend notwendig ist, und dieses Hyper-V braucht, wäre ich für eine Lösung bei Docker schon recht froh.

Verstehe nicht, dass Docker auf Linux das nicht braucht, aber unter Windows in einer Linux-VM laufen "muss" und diese Hyper-V benötigt.
Das geht doch besser 😃

16.806 Beiträge seit 2008
vor 4 Jahren

Den Hyper-V Manager kann ich öffnen.

Du kannst den Manager auch öffnen ohne, dass Hyper-V selbst läuft.

Jedoch behauptet Docker immer, dass ich Hyper-V anschalten soll, sobald ich die andere Application installiert habe, die auch Hyper-V braucht.

Genaue Quelle der Fehlermeldung? Screenshot?
Docker Desktop ist die anderen Anwendung eigentlich egal. DD hat eine eigene VM Namens "DockerDesktopVM" und einen eigenen Virtual Switch.

Verstehe nicht, dass Docker auf Linux das nicht braucht, aber unter Windows in einer Linux-VM laufen "muss" und diese Hyper-V benötigt.

Dann hast Du nicht verstanden, wie Docker funktioniert - oder was Container sind.

Docker basiert auf einer Isolationstechnik namens LXc (und Nebenzeug wie eben den Kernel und cgroups etc...) - und das ist nun mal eine Linux-Technik.
Daher brauchst Du unter Windows, um Linux Container laufen lassen zu können, eben Hyper-V mit einem Linux Image - oder bald direkt das Linux Subsystem.

Mit Windows Containern brauchst Du kein Hyper-V.