Docker-Container unter Windows

Richten Sie mit Docker einen Container ein, um unter Windows jederzeit ein flottes Linux zur Hand zu haben. Und ganz nebenbei lernen Sie, wie die hochgejubelte Software Docker funktioniert.

Der Docker-Hype ist nicht mehr ganz neu. Aber erst mit den neueren Versionen von Windows 10 wird er einer größeren Anzahl potenzieller Benutzer zugänglich. Grund genug, einen gründlichen Blick darauf zu werfen. Sie richten ein Linux-Image ein, dass Sie dann als Docker-Container in Windows laufen lassen. Klingt abgefahren, funktioniert aber und hat gegenüber einer virtuellen Maschine zahlreiche Vorteile.

Unter der Haube sind Container im Prinzip Prozesse, die vom Rest des Systems isoliert sind. Sie laufen von einem bestimmten Image aus. Ein Image enthält alle nötigen Komponenten, um den Container zu starten. Da eine Docker-basierte Anwendung nur ein Prozess ist, der auf Ihrem System läuft, müssen Sie kein Gastbetriebssystem mit sich herumschleppen, wie das etwa bei Virtualbox der Fall ist. Es gibt zwar gute Gründe, virtuelle Maschinen zu verwenden, aber sie lösen andere Probleme als Docker. Mit Virtual Machines lassen sich ganze Systeme isolieren. Mit Docker können Sie einzelne Anwendungen isolieren.

Docker und virtuelle Maschinen haben viele Ähnlichkeiten: Sie stellen beide isolierte Umgebungen bereit und können sowohl zum Verpacken als auch zum Verteilen von Software verwendet werden. Allerdings sind Container in der Regel viel kleiner und schneller. Ein Container ist normalerweise nicht größer als 100 MByte – oftmals sogar noch deutlich kleiner –, während eine virtuelle Maschine mit ihrem eigenen Betriebssystem schnell mehrere GByte in Anspruch nimmt. Aus diesem Grund kann ein einzelner Server auch wesentlich mehr Container hosten als virtuelle Maschinen.

Ein großer Vorteil liegt in der Geschwindigkeit: Applikationen in Containern lassen sich fast aus dem Stand starten, wohingegen virtuelle Maschinen mitunter einige Minuten für den Boot-Vorgang benötigen, bevor dann die Applikation starten kann. Container lassen sich also »just in time« nutzen, wenn sie benötigt werden, und verschwinden anschließend wieder. Das spart Ressourcen.

Ein weiterer wichtiger Aspekt bei Docker-Containern sind die Images. So startet jeder Container aus einem eigenen Image mit einem eigenem Dateisystem heraus. Dazu packt der Build-Prozess eines Images alles, was die Applikation zur Laufzeit benötigt, in das Image hinein und startet daraus den Container. Das können etwa Bibliotheken, Tools, Compiler und Konfigurationsdateien sein. Dieses Prinzip führt dazu, dass Container äußerst portabel sind. […]

Fachartikel für Chip