Service Docker

Seit dem Erscheinen von Docker haben Container DevOps revolutioniert.

Container benötigen weniger Ressourcen als virtuelle Maschinen, da sie auf das Starten eines eigenen Betriebssystems verzichten und stattdessen im Kontext des Host-Betriebssystems laufen.

Aus Sicht des Betriebssystems sind Container nichts anderes als Prozesse, eingeschränkt auf Namespaces und Cgroups.

Ein Prozess in einem Namespace hat eine eigene Umgebung (Netzwerkrouten, Control Group Limits, DNS, Prozess-ID).
Damit können sich Prozesse, die einen Namespace teilen, gemeinsame Ressourcen teilen und sind deswegen von anderen Prozessen und dem Hostsystem isoliert.

Zusätzlich hat Docker noch ein Filesystem, das Images in Schichten organisiert.

Docker hat alle zum Bauen, Transportieren und Starten von Containern notwendigen Tools in einem Kommando integriert.

Docker-Container werden aus einem Container-Image gestartet, das als einfache Datei leicht von einem System auf ein anderes portierbar ist. Mit einem einfachen Kopiervorgang kann die Installation und Änderung einer Software durchgeführt werden.

Aus einem Docker-Image heraus lassen sich beliebig viele Container starten, da Schreibzugriffe nicht auf das Container-Image wirken, sondern jeweils auf ein eigenes Dateisystem, das dem Image überlagert ist. Für viele Anwendungen können fertige Container-Images vom Docker-Hub heruntergeladen und unmittelbar gestartet werden. Die Konfiguration ist so weit wie möglich bereits im Image eingerichtet. Die Netzwerkkonfiguration wird beim Start automatisch angelegt.

Ein Vorteil der Docker-Container ist die gute Skalierbarkeit.  Die Verwaltung einer größeren Anzahl von Containern erleichtern Werkzeuge für die Container-Orchestrierung wie z. B.  Kubernetes.

cloud4service unterstützt bei der Entwicklung von Docker-Images in Ihrem Unternehmen.