Docker unterstützt Benutzer übrigens auch dabei, vorbereitete Container für den Export in Docker herzustellen. Ein Container ist ja im Normalfall nichts anderes als das komplette Dateisystem einer Linux-Installation; Docker bietet die Möglichkeit, jedes beliebige Verzeichnis problemlos in ein Docker-Image umzuwandeln. Wer es gerne spartanisch mag, kann sich also beispielsweise auf einem Debian- oder Ubuntu-System mittels »debootstrap
«
ein Mini-System aus dem Ärmel zaubern, darin die Abhängigkeiten für eine beliebige Applikation und diese selbst installieren und am Ende Docker den Ordner übergeben – fertig ist das Image, das sich beliebig verteilen lässt. Das Image-Bauen in Docker ist übrigens obendrein denkbar einfach, denn mittels des »docker
«
-Programms ist ein einzelner Befehl völlig ausreichend:
debootstrap precise ./rootfs; tar -C ./rootfs -c . | docker importubuntu/mybase
Fertig ist das Image.
Docker passt mit seinem Funktionsportfolio sehr gut in die aktuell durch Cloud-Computing und Everything-as-a-Service-geprägte IT-Szene. Denn letztlich ist das Ziel bei Docker klar: Über vorgefertigte Container, die sich beliebig im Netz verteilen lassen, kann der Admin Platform-as-a-Service-Anwendungen leicht und komfortabel unters Volk bringen. Das PaaS-Konzept passt zu Docker, weil es ebenfalls die Applikation in den Vordergrund rückt und nicht so sehr das Betriebssystem, auf dem eben jene Applikation läuft.
Docker tut genau das. Mittlerweile steht auch ein auf den Namen »Docker Index
«
getaufter Dienst zur Verfügung (Abbildung 1), der quasi als Container-Marktplatz dient: Benutzer, die sich einen Container für bestimmte Zwecke gebaut haben, können diesen in den Index hochladen, damit er anschließend anderen Benutzern zur Verfügung steht. Die Teilnahme am Docker Index ist kostenlos, lediglich eine Registrierung wird vorausgesetzt. Die Zahl der verschiedenen Images, die sich in Docker finden, ist beeindruckend: Neben Basis-Images für praktisch alle gängigen Distributionen stehen auch spezielle Images parat, so zum Beispiel mehrere Tomcat-Images, mit denen sich quasi per Mausklick eine komplete Java-Tomcat-Instanz starten lässt. MySQL, Apache oder Drupal als fertige Plattform, sogar einige OpenStack-Komponenten: Für all das stehen bereits Docker-Images zur Verfügung, und täglich kommen neue hinzu. Das ist auch deshalb praktisch, weil es die Einstiegshürde senkt: Hat man Docker erstmal installiert, dauert es bis zum ersten selbst deployten Programm nicht mehr lange.