Open-Source für Container

Was ist Docker?

| Autor / Redakteur: Stefan Luber / Dr. Jürgen Ehneß

Die wichtigsten IT-Fachbegriffe verständlich erklärt.
Die wichtigsten IT-Fachbegriffe verständlich erklärt. (Bild: © aga7ta - Fotolia)

Docker ist eine Open-Source-Software, mit der sich Container zur Virtualisierung von Anwendungen erstellen und betreiben lassen. Auf einem Linux-, Windows- oder macOS-basierten Host-System werden mit der Software Laufzeitumgebungen zur Ausführung voneinander isolierter Anwendungen bereitgestellt, ohne dass die Virtualisierung des kompletten Betriebssystems notwendig ist.

Bei Docker handelt es sich um eine frei verfügbare Software zur Realisierung von Containerlösungen. Sie hat sich im Umfeld containerbasierter Anwendungen etabliert und ist eine der beliebtesten Lösungen in diesem Bereich.

Die Software stellt alle notwendigen Funktionen bereit, um Anwendungen zu virtualisieren und die voneinander isolierten Container auf einem Host-System zu betreiben. Ein Container enthält alle benötigten Ressourcen zur Ausführung einer Anwendung inklusive des Anwendungscodes, der Laufzeitumgebung, der Systembibliotheken und der Systemwerkzeuge.

Container lassen sich als Dateien speichern und auf andere Systeme übertragen. Die zentrale Komponente auf dem Host-System bildet die Docker-Engine, welche die Ressourcen des Rechners den einzelnen Containern zuweist und für die Isolierung der Anwendungen in ihren Laufzeitumgebungen sorgt. Container lassen sich auf eigenen Rechnern oder mithilfe von Cloud-Services bereitstellen.

Die erste Version der Software erschien im Jahr 2013. Programmiert ist die Software mit der Programmiersprache Go. Die Betriebssysteme Linux, Windows und macOS werden unterstützt. Zur Verwaltung einer Vielzahl gleichzeitig zu betreibender Container in verteilten Umgebungen ist die Orchestrierungslösung Kubernetes einsetzbar.

Das prinzipielle Containerkonzept

Das Containerkonzept ist eine Virtualisierungstechnik, die Anwendungen auf einem Host-System voneinander isoliert. Im Vergleich zu virtuellen Maschinen werden nicht komplette Rechner inklusive Betriebssystem virtualisiert, sondern nur die zur Ausführung der Anwendungen benötigten Laufzeitumgebungen mit ihren Ressourcen wie Anwendungscode, Bibliotheken oder Konfigurationen. Das Containerformat ist genau definiert. Container inklusive ihrer Anwendungen und Laufzeitumgebung lassen sich in Form einer Datei leicht auf andere Host-Systeme übertragen.

Funktionsweise

Die zentrale Komponente zur Containervirtualisierung ist die Docker-Engine. Sie bildet die Schnittstelle zwischen den einzelnen Containern eines Hosts und dessen Ressourcen. Um Container auf einem System zu nutzen, muss die Engine installiert sein. Zur Isolation der Prozesse kommen innerhalb eines Linux-Kernels Funktionen wie namespaces und cgroups zum Einsatz.

Das Bereitstellungsmodell der Anwendungen basiert auf Images. Bei einem Image handelt es sich um ein Speicherabbild eines Containers, das aus mehreren Layern besteht und unveränderlich ist. Das Image ist als Datei portabel und auf verschiedenen Systemen nutzbar. Eine aktive Instanz eines Images wird als „Container“ bezeichnet. Aus einem einzigen Image können beliebig viele Container gestartet werden.

Vorteile der Containerisierung mit Docker

Die Containerisierung mit der frei verfügbaren Software bietet zahlreiche Vorteile. Sie benötigt weniger Ressourcen als virtuelle Maschinen, schottet die Anwendungen aber dennoch sicher untereinander und vom Host-System ab. Ein Container lässt sich in Form einer Image-Datei einfach auf andere Systeme übertragen. Es ist keine neue Installation der Anwendung und ihrer Laufzeitumgebung notwendig. Weitere Vorteile sind:

  • die gute Skalierbarkeit durch die Nutzung vieler weiterer Container,
  • die einfache Verwaltung vieler Container über Orchestrierungs-Tools wie Kubernetes,
  • das schnelles Starten von Containern.

Kommentare werden geladen....

Was meinen Sie zu diesem Thema?

Der Kommentar wird durch einen Redakteur geprüft und in Kürze freigeschaltet.

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
  1. Avatar
    Avatar
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Kontaktieren Sie uns über: support.vogel.de/ (ID: 46184989 / Definitionen)