Mit Docker erobert eine neue Technologie die IT-Abteilungen: Entwickler beschleunigen und automatisieren hiermit die Applikationsverteilung in Cloud-Umgebungen. Frank Pientka, Senior Software Architect, Materna GmbH kommentiert das Thema Docker.
In der Software-Entwicklung spielt neben den klassischen Phasen Build, Run und Manage das Deployment, also das Ausrollen der Anwendung, eine immer größere Rolle. Während sich die meisten Phasen durch optimierte Abläufe und Tool-Unterstützung schon sehr effizient gestalten lassen, ist das Ausrollen von neuer entwickelter Software in komplexen Cloud-Umgebungen noch nicht ausreichend automatisiert.
Vor vielen Jahrzehnten revolutionierten Standard-Container die Handelsschifffahrt. Mit Docker kommt nun eine vergleichbare Idee in die IT-Abteilungen. Bei dem im Jahr 2013 gestarteten Projekt Docker handelt es sich um einen leichtgewichtigen Linux-Container, der über eine einheitliche Art schrittweise aufgesetzt und betrieben werden kann. Im Gegensatz zu Virtualisierungslösungen, die neben einem Hypervisor ein komplettes Gastbetriebssystem benötigen, erweitert Docker den Linux-Prozessraum um Virtualisierungskonzepte, sodass kein neues Betriebssystem notwendig wird. Die in einem Docker-Container installierten Anwendungen sind jedoch physikalisch und logisch so weit voneinander getrennt, dass diese eigene Ressourcen und Anwendungen verwalten können.
Dieses Prinzip vereinfacht die Bereitstellung von Anwendungen: Da Container bereits alle nötigen Daten für eine Applikation enthalten, lassen sie sich leicht als Dateien transportieren und installieren. So gewährleisten Container die Trennung der auf einem Rechner genutzten Ressourcen, sodass ein Container keinen Zugriff auf Ressourcen anderer Container hat. Das Ziel ist schließlich die industriereife Auslieferung von in Containern verpackten Applikationen, was einen extrem hohen Automatisierungsgrad mit sich bringt.
Um Docker ist bereits ein starkes Ökosystem entstanden. Da Docker unter der freien Apache-Lizenz veröffentlicht wird, sind auch viele namhafte Hersteller, wie Google, RedHat, Microsoft und IBM inzwischen im Boot. Der Trend zeigt, dass sich Docker immer weiter weg vom Container hin zu einer Plattform mit eigenen Werkzeugen entwickelt. Mit Produkten der Drittanbieter ist es beispielsweise möglich, Docker in bestehende Systemumgebungen besser zu integrieren, als auch die gesamte Plattform effizienter zu betreiben.
Im aktuellen Statement-Service erläutert Frank Pientka, Senior Software Architect, Materna, die Funktionsweise von Docker und die Vorteile für IT-Abteilungen.
Die Statements zum Thema Docker
„Eine stabile API, eine ausführliche Dokumentation, zahlreiche Anwendungsbeispiele sowie eine aktive Open Source Community geben Docker den notwendigen Anschub, um die Infrastrukturwelt auf den Kopf zu stellen.“
„Die Entwickler-Community fördert mit Docker das Entstehen einer neuen Basistechnologie. Diese wird dabei helfen, auf den wachsenden Bedarf von IT-Ressourcen flexibel zu reagieren und die Komplexität in hybriden Cloud-Umgebungen zu minimieren.“
„Vieles in Docker ist vom Grundsatz her nicht neu. Das System basiert beispielsweise auf Linux Containers und Kernel-Namespaces, die schon länger Teil des Linux-Kernels sind und einfach das Linux-Architekturkonzept erweitern. Doch in der Kombination dieser und weiterer Technologien schafft es Docker, die Entwickler dabei zu unterstützen, in skalierbaren und heterogenen IT-Infrastrukturen neue Anwendungen schnell und einfach zur Verfügung zu stellen.“
„Um Docker ist bereits ein starkes Ökosystem entstanden. Da die Lösung unter der freien Apache-Lizenz veröffentlicht wird, sind auch viele namhafte Hersteller wie Google, RedHat, Microsoft oder IBM inzwischen mit an Bord.“
„In Zukunft wird sich Docker hin zu einer Plattform mit eigenen Werkzeugen entwickeln. Mit ersten Produkten der Drittanbieter ist es heute schon möglich, Docker in bestehende Systemumgebungen besser zu integrieren sowie die gesamte Plattform effizienter zu betreiben.“