Containerisierung

Technology

Was ist das?

Containerisierung ist der Prozess, bei dem eine Anwendung und ihre Komponenten in einem Container-Image gebündelt werden. Bei der Erstellung von Containern muss der Standard der Open Container Initiative (OCI) beachtet werden. Solange das Ergebnis ein Container-Image ist, das diesem Standard entspricht, spielt es keine Rolle, welches Containerisierungstool verwendet wird.

Probleme, die damit gelöst werden

Bevor sich Container durchsetzten, verließen sich Unternehmen auf virtuelle Maschinen (VMs), um mehrere Anwendungen auf einem einzigen Bare-Metal-Rechner zu orchestrieren. VMs sind wesentlich größer als Container und benötigen einen Hypervisor. Aufgrund der Speicherung, Sicherung und Übertragung dieser größeren VM-Vorlagen ist auch die Erstellung der VM-Vorlagen langsam. Außerdem können VMs unter Konfigurationsschwankungen leiden, was gegen den Grundsatz der Unveränderlichkeit verstößt.

Wie es hilft

Container-Images sind leichtgewichtig (im Gegensatz zu herkömmlichen VMs) und der Containerisierungsprozess erfordert eine Datei mit einer Liste von Abhängigkeiten. Diese Datei kann versionskontrolliert und der Build-Prozess automatisiert werden, so dass sich ein Unternehmen auf andere Prioritäten konzentrieren kann, während die automatisierten Prozesse den Build-Prozess übernehmen. Ein Container-Image wird mit einer eindeutigen Kennung gespeichert, die mit seinem genauen Inhalt und seiner Konfiguration verknüpft ist. Wenn Container geplant und verschoben werden, werden sie immer auf ihren Ausgangszustand zurückgesetzt, was eine Konfigurationsabweichung verhindert.