Containerisierung
Containerisierung ist eine Technologie, die es ermöglicht, Anwendungen und deren Abhängigkeiten isoliert in Containern zu verpacken. Ein Container ist eine leichtgewichtige, portierbare und unabhängige Umgebung, in der eine Anwendung ausgeführt wird. Im Gegensatz zu virtuellen Maschinen (VMs) teilt ein Container denselben Kernel mit dem Host-Betriebssystem, was ihn sehr effizient und ressourcenschonend macht.
Container benötigen nur minimale Systemressourcen, da sie keine eigenes Betriebssystem starten müssen. Im Vergleich zu VMs benötigen sie weniger Ressourcen. Das führt besonders in der Cloud zu Kostensenkungen.
Ein Container enthält alle Abhängigkeiten einer Anwendung, was bedeutet, dass er auf jedem System laufen kann, das von der Container-Engine unterstützt wird.
Jeder Container läuft isoliert von anderen Containern und vom Host-Betriebssystem. Dies verbessert die Sicherheit und verhindert, dass eine Anwendung Einfluss auf andere Anwendungen hat.
Container sind eine Schlüsseltechnologie für moderne IT-Umgebungen, insbesondere in Microservices-Architekturen und Cloud-Native-Anwendungen. In Verbindung mit Orchestrierungstools wie Kubernetes ermöglichen sie eine effiziente Verwaltung und Skalierung von Anwendungen. Container spielen auch eine zentrale Rolle in DevOps CI/CD-Pipelines, da sie eine konsistente Umgebung über Entwicklungs-, Test- und Produktionsphasen hinweg gewährleisten.
Containerisierung vs. Virtualisierung
Der Hauptunterschied zwischen Containern und Virtualisierung liegt in der Art und Weise, wie sie Systemressourcen verwenden.
Virtuelle Maschinen (VMs) simulieren ein komplettes physisches System mit einem eigenen Betriebssystem. Jede VM benötigt eine eigene Instanz eines Betriebssystems und virtualisierte Hardware-Ressourcen.

Container teilen sich den Kernel des Host-Betriebssystems, was sie sehr effizient macht. Sie enthalten nur die Anwendung und ihre Abhängigkeiten und sind dadurch deutlich kleiner und schneller als VMs.

Vorteile von Containern
Last updated