Entwickler Spezial 03/15

Docker Tools und Helferlein

Autor:

Die Popularität von Docker zeigt sich auch in der schnell wachsenden Zahl von Tools und Helferlein, die um Docker herum entstehen. Diese Tools erleichtern das Arbeiten mit Docker-Images und -Containern. In diesem Artikel wird eine kleine Auswahl an Tools vorgestellt, die besonders beim Einstieg in Docker hilfreich sind.
Ein sehr populäres Tool für die Installation von Docker für Nicht-Linux-Systeme ist boot2docker, das es ermöglicht, scheinbar wie unter Linux direkt mit Docker auf dem eigenen System, OS X und Windows zu arbeiten. Während der Arbeit mit Docker ist es manchmal sehr nützlich, in einen laufenden Docker-Container direkt hineinzuschauen. Das ermöglicht das Tool nsenter [2] oder mit der kommenden Docker Version 1.3 der Befehl docker exec. Ist die Entwicklung eines Docker-Images abgeschlossen und soll dieses weitergegeben oder womöglich sogar in Produktion gehen, hilft docker-squash, alle Zwischenlayer aus einem Image zu entfernen. Auf diese Weise entsteht ein reduziertes und kleineres Image. Sobald eine Anwendung aus mehreren Docker-Containern besteht, müssen diese orchestriert werden.
Fig ermöglicht diese Orchestrierung über eine zentrale Konfigurationsdatei und kümmert sich selbstständig um das Bauen, Starten und Verbinden der Container. Sollte man die eigenen Docker-Images nicht über den öffentlichen Docker-Hub an seine Kollegen und Mitarbeiter verteilen wollen, kann man mit docker-registry [5] eine private Docker-Registry aufsetzen. Im Folgenden werden diese fünf Docker-Tools und Helferlein im Detail vorgestellt.

Docker für OS X und Windows: boot2docker

Die Docker-Laufzeitumgebung besteht aus zwei Teilen: Docker-Daemon und -Client. Der Docker-Daemon verwaltet die Docker-Container und führt die Kommandos aus, die über den Client – das Kommandozeilenprogramm –docker eingegeben werden. Dazu kommunizieren Docker-Daemon und Docker-Client über Sockets. Daemon und Client müssen deshalb nicht auf demselben Rechner laufen. boot2docker macht sich diesen Umstand zu Nutze, um Docker auch unter OS X und Windows laufen lassen zu können. Dafür wird im Hintergrund mithilfe von VirtualBox eine virtuelle Maschine mit Linux gestartet. Auf dem Wirtsbetriebssystem wird aus einem Terminal per TCP-Socket auf den Docker-Daemon in der virtuellen Maschine zugriffen. So scheint es, als würde Docker direkt auf dem lokalen System laufen. Windows-Nutzer können die virtuelle Maschine direkt über ein Terminalfenster bedienen. (…)

Vollständiger Artikel