Docker Applikations-Container: Drei neue Werkzeuge zur Orchestrierung
Im Dezember auf der Docker Con EU kündigte Docker drei neue Werkzeuge zur Steuerung großer Mengen von Containern an. Jetzt wurden Machine, Swarm und Compose veröffentlicht. Die Werkzeuge dienen dem Erstellen und Verwalten von Container-Umgebungen auf verschiedenen Ebenen.
Docker Machine ist, ebenso wie Swarm, eine erste Beta-Version und noch nicht zum produktiven Einsatz gedacht. Mit Docker Machine lassen sich Docker Engines leicht auf Servern ausrollen, sei es in der Cloud, im Rechenzentrum oder auf der Entwickler-Maschine zu Hause. Docker Engines ist der Teil von Docker, der die Applikationen virtualisiert. Der lokale Docker Client kommuniziert dann mit den Docker Engines. Machine unterstützt unter anderem die lokalen oder Remote Provider Amazon EC2, Microsoft Azure, DigitalOcean, Google Compute Engine, OpenStack, Rackspace, VirtualBox und VMware Fusion sowie vSpehere. Machine kümmert sich dabei auch um die Sicherheit, indem es etwa TLS-Zertifikate aufsetzt.
Docker Swarm setzt ein Ebene höher an und dient der Orchestrierung von Docker-Clustern. Swarm kann mehrere Docker Engines zusammenfassen und als eine virtuelle Docker Engine darstellen und handhaben. Was kompliziert klingt ist recht einfach. Mit wenigen Befehlen wird ein Cluster erstellt, Swarm gestartet und auf allen Clients die Engines zu diesem Cluster eingeladen.
Das dritte veröffentlichte Werkzeug, Docker Compose, wurde nicht neu geschrieben, sondern aus Fig heraus entwickelt. Deshalb ist es auch nicht als Beta, sondern bereits als Version 1.1 verfügbar. Fig kam durch den Zukauf der Firma Orchard zu Docker. Compose fasst die einzelnen Komponenten einer containerisierten Applikation in einer Datei zusammen, die dann überall mit nur einem Befehl die Applikation lauffähig zusammenstellt. Dazu gehören Container, Konfigurationsdateien, Verweise und Docker Volumes. Für die nähere Zukunft ist die Integration von Compose mit Swarm vorgesehen, sodass Swarm den Cluster steuert, während sich Compose auf Applikationsebene um die Orchestrierung kümmert.
Microsoft hat bereits Docker Machine und Docker Swarm für Azure zur Verfügung gestellt. Machine ist zusätzlich auch auf Hyper-V verfügbar. Docker Compose soll künftig von Azure aus zugänglich werden. Microsoft ist aber nicht das einzige Unternehmen, das die neuen Werkzeuge bereits als Beta integriert. Auch AWS, Google, IBM, Joyent, Mesosphere und VMware wollen ihren Kunden die neuen Docker-Werkzeuge zeitnah anbieten.