Docker ist der Name einer Software, mit der sich Anwendungen inklusive ihrer Anwendungsumgebung virtualisiert in Containern ausführen lassen. Die Virtualisierung des Betriebssystems wie bei einer virtuellen Maschine ist nicht notwendig. Auf einem Host-System können viele Container parallel und isoliert voneinander betrieben werden. Die Software ist Open Source und steht unter Apache-Lizenz 2.0. Neben Linux unterstützt Docker mittlerweile die Betriebssysteme Windows und macOS.
Die wichtigsten IT-Fachbegriffe verständlich erklärt.
"Docker" hat mehrere synonyme Verwendungen. Der Name wird zum einen für die Softwareplattform Docker verwendet, mit der sich Anwendungen inklusive ihrer Anwendungsumgebung virtualisiert in Containern betreiben lassen, und zum anderen für das US-amerikanische Unternehmen Docker Inc., das verschiedene Dienstleistungen und kommerzielle Produkte rund um die Virtualisierungslösung anbietet.
Die Software Docker wurde ursprünglich von dotCloud entwickelt und 2013 veröffentlicht. dotCloud benannte sich kurze Zeit später zu Docker Inc. um. Die Software ist Open Source und steht unter Apache-Lizenz 2.0.
In Docker-Containern lassen sich virtualisierte Anwendungen über das gemeinsam genutzte Betriebssystem eines Host-Rechners isoliert voneinander betreiben. Ein Container enthält alle zur Ausführung der Anwendung benötigten Ressourcen wie Laufzeitumgebung, Systembibliotheken, Programmcode und Systemwerkzeuge. Der Container lässt sich in Form eines Images wie eine Datei speichern oder auf andere Rechner übertragen.
Ursprünglich wurde Docker nur von Linux unterstützt. Mittlerweile lässt es sich auch auf Rechnern mit Windows- oder macOS-Betriebssystem nutzen. In komplexen Umgebungen mit vielen verschiedenen in Containern virtualisierten Services, wie sie für Cloud-native, Microservice-basierte Anwendungen benötigt werden, werden zur Verwaltung und Überwachung der vielen gleichzeitig zu betreibenden Container Orchestrierungslösungen wie Docker Swarm oder Kubernetes (K8s) genutzt.
Docker zählte lange Zeit zu den beliebtesten Lösungen im Bereich der Container-Virtualisierung. Die Software wird zwar nach wie vor weltweit intensiv, sowohl On-Premises als auch cloudbasiert eingesetzt, hat aber in den letzten Jahren an Bedeutung verloren. Das ist nicht zuletzt darauf zurückzuführen, dass es mittlerweile zahlreiche Alternativen gibt und die Container-Orchestrierungslösung Kubernetes seit 2022 die Docker-Engine nicht mehr nativ unterstützt.
Als offizielles Registry für Docker-Images und Repositories fungiert der Onlinedienst Docker Hub. Auf Docker Hub können Container-Images als vorgefertigte Lösungen veröffentlicht und geteilt werden. Der Hub lässt sich sowohl als öffentliches als auch als privates Registry nutzen.
Was unterscheidet die Container-Virtualisierung von virtuellen Maschinen?
Im Computerumfeld existieren unterschiedliche Virtualisierungskonzepte. Die beiden bekanntesten und am häufigsten genutzten sind die Container-Virtualisierung und virtuelle Maschinen (VMs). Bei einer VM wird ein kompletter Rechner inklusive seines Betriebssystems virtualisiert. Die Schnittstelle zwischen VM und der Hardware beziehungsweise dem Betriebssystem des Host-Rechners bildet ein sogenannter Hypervisor.
Die Container-Virtualisierung hingegen setzt auf dem Betriebssystem des Host-Rechners auf. Sie virtualisiert lediglich die Anwendung mit der zur Ausführung benötigten Laufzeitumgebung, dem Programmcode, den Systembibliotheken und Systemwerkzeugen.
Der Zugriff der virtualisierten Umgebung auf das Host-Betriebssystem und die Ressourcen des Host-Rechners ist über eine Container-Engine realisiert. Im Gegensatz zu VMs sind Container wesentlich schlanker. Sie belegen weniger Ressourcen (Computing, Storage, Arbeitsspeicher) des Host-Systems und lassen sich, da kein virtuelles Betriebssystem gebootet werden muss, schneller starten.
Was sind die wichtigsten Komponenten einer Docker-basierten Container-Umgebung?
Die Docker-Engine ist eine zentrale Komponente einer Container-Umgebung. Sie ist quasi die Schnittstelle zwischen dem Betriebssystem des Host-Systems und den einzelnen virtualisierten Containern. Um Container auf einem Host-Rechner betreiben und ausführen zu können, muss die Engine installiert sein. Sie weist den Containern die benötigten Ressourcen zu. Innerhalb des Linux-Kernels des Host-Systems werden Kernel-Funktionen wie namespaces und cgroups zur Isolation und Verwaltung der Prozesse und Ressourcen genutzt. Weitere Komponenten im Umfeld der Engine sind die Docker Engine REST API und das Docker CLI (Command Line Interface).
Das schreibgeschützte Speicherabbild eines Containers wird als Image bezeichnet. Es enthält die Anwendung und die zur Ausführung benötigten Komponenten und lässt sich wie eine Datei kopieren, speichern oder auf andere Systeme mit einer Docker-Engine übertragen. Images können aus mehreren Layern bestehen. Jeder Layer beschreibt den Unterschied zum vorherigen Layer. So wird sichtbar, welche Elemente einem Image hinzugefügt oder entfernt wurden. Aus einem Image lassen sich beliebig viele Container starten. Ein Container ist quasi eine aktive Live-Instanz eines Images. Sie enthält die ausführbaren Live-Inhalte und erlaubt die Interaktion mit Benutzern.
Stand: 08.12.2025
Es ist für uns eine Selbstverständlichkeit, dass wir verantwortungsvoll mit Ihren personenbezogenen Daten umgehen. Sofern wir personenbezogene Daten von Ihnen erheben, verarbeiten wir diese unter Beachtung der geltenden Datenschutzvorschriften. Detaillierte Informationen finden Sie in unserer Datenschutzerklärung.
Einwilligung in die Verwendung von Daten zu Werbezwecken
Ich bin damit einverstanden, dass die Vogel IT-Medien GmbH, Max-Josef-Metzger-Straße 21, 86157 Augsburg, einschließlich aller mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen (im weiteren: Vogel Communications Group) meine E-Mail-Adresse für die Zusendung von Newslettern und Werbung nutzt. Auflistungen der jeweils zugehörigen Unternehmen können hier abgerufen werden.
Der Newsletterinhalt erstreckt sich dabei auf Produkte und Dienstleistungen aller zuvor genannten Unternehmen, darunter beispielsweise Fachzeitschriften und Fachbücher, Veranstaltungen und Messen sowie veranstaltungsbezogene Produkte und Dienstleistungen, Print- und Digital-Mediaangebote und Services wie weitere (redaktionelle) Newsletter, Gewinnspiele, Lead-Kampagnen, Marktforschung im Online- und Offline-Bereich, fachspezifische Webportale und E-Learning-Angebote. Wenn auch meine persönliche Telefonnummer erhoben wurde, darf diese für die Unterbreitung von Angeboten der vorgenannten Produkte und Dienstleistungen der vorgenannten Unternehmen und Marktforschung genutzt werden.
Meine Einwilligung umfasst zudem die Verarbeitung meiner E-Mail-Adresse und Telefonnummer für den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern wie z.B. LinkedIN, Google und Meta. Hierfür darf die Vogel Communications Group die genannten Daten gehasht an Werbepartner übermitteln, die diese Daten dann nutzen, um feststellen zu können, ob ich ebenfalls Mitglied auf den besagten Werbepartnerportalen bin. Die Vogel Communications Group nutzt diese Funktion zu Zwecken des Retargeting (Upselling, Crossselling und Kundenbindung), der Generierung von sog. Lookalike Audiences zur Neukundengewinnung und als Ausschlussgrundlage für laufende Werbekampagnen. Weitere Informationen kann ich dem Abschnitt „Datenabgleich zu Marketingzwecken“ in der Datenschutzerklärung entnehmen.
Falls ich im Internet auf Portalen der Vogel Communications Group einschließlich deren mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen geschützte Inhalte abrufe, muss ich mich mit weiteren Daten für den Zugang zu diesen Inhalten registrieren. Im Gegenzug für diesen gebührenlosen Zugang zu redaktionellen Inhalten dürfen meine Daten im Sinne dieser Einwilligung für die hier genannten Zwecke verwendet werden. Dies gilt nicht für den Datenabgleich zu Marketingzwecken.
Recht auf Widerruf
Mir ist bewusst, dass ich diese Einwilligung jederzeit für die Zukunft widerrufen kann. Durch meinen Widerruf wird die Rechtmäßigkeit der aufgrund meiner Einwilligung bis zum Widerruf erfolgten Verarbeitung nicht berührt. Um meinen Widerruf zu erklären, kann ich als eine Möglichkeit das unter https://contact.vogel.de abrufbare Kontaktformular nutzen. Sofern ich einzelne von mir abonnierte Newsletter nicht mehr erhalten möchte, kann ich darüber hinaus auch den am Ende eines Newsletters eingebundenen Abmeldelink anklicken. Weitere Informationen zu meinem Widerrufsrecht und dessen Ausübung sowie zu den Folgen meines Widerrufs finde ich in der Datenschutzerklärung.
Wofür lässt sich Docker einsetzen?
Die Container-Virtualisierung bietet zahlreiche Einsatzmöglichkeiten. Mit ihr lassen sich:
Anwendungen bereitstellen und ausführen
Anwendungen entwickeln
Anwendungen migrieren oder portieren
DevOps-Prozesse umsetzen
kontinuierliche Integrations- und Bereitstellungsprozesse realisieren
Umgebungen für cloudnative, Microservice-basierte Anwendungen realisieren
parallele Anwendungen auf einem Host-System isolieren
Anwendungsumgebungen und Datenverarbeitungssysteme skalieren
Testumgebungen realisieren und Anwendungen testen
Was sind die Vor- und Nachteile der Container-Virtualisierung mit Docker?
Die Container-Virtualisierung benötigt weniger Ressourcen als virtuelle Maschinen. Container sind sehr schlank, schnell zu starten und sind als Dateien auf andere Systeme übertragbar. Sie lassen sich ausführen, ohne dass eine Installation der Anwendung und ihrer Anwendungsumgebung erforderlich ist. Die Bereitstellungszeiten verkürzen sich deutlich. Auf einem einzigen Host-System können sehr viele Container ausgeführt werden. Container sind sowohl für On-Premises- als auch für Cloud-Umgebungen geeignet. Die in verschiedenen Containern ausgeführten Anwendungen sind durch die Docker-Engine untereinander abgeschottet. Die Layer-Struktur der Images ermöglicht eine Versions- und Änderungskontrolle sowie Rollbacks auf vorherige Versionen. Docker ist eine frei verfügbare Open-Source-Software und auf Rechnern mit unterschiedlichen Betriebssystemen einsetzbar.
Als Nachteile des Konzepts der Container-Virtualisierung und der Nutzung von Docker lassen sich aufführen:
die Virtualisierungstiefe im Vergleich zu virtuellen Maschinen ist geringer
die Container eines Host-Rechners greifen alle auf ein gemeinsames Betriebssystem zu
Fehler oder Sicherheitslücken des Betriebssystems oder der Container-Engine wirken sich gegebenenfalls auf alle Docker-Container aus
komplexe Container-Umgebungen erfordern eine Orchestrierungslösung
es kann eine gewisse Abhängigkeit von der Docker-Software entstehen
keine native Unterstützung mehr durch die Orchestrierungslösung Kubernetes
in vielen Bereichen kommen mittlerweile Alternativen zu Docker zum Einsatz