c't 15/2017
S. 120
Praxis
Container
Aufmacherbild

Von der Idee zum fertigen Container

Eigene Container für vorhandene und neue Dienste bauen

Docker ist eine interessante Lösung – für Probleme, die bislang auf andere Art gelöst wurden. Wir zeigen, wie Sie Ihre vorhandene MySQL-Datenbank in einen Container auslagern und mit in Containern verpacktem Tor und P2P-Messenger Bitmessage sicher im Darknet kommunizieren. Den Umgang mit untereinander verbundenen Containern lernen Sie nebenbei auch.

Alter Wein in neuen Schläuchen? Das könnte man glauben, wenn man sich ansieht, welche Dienste Admins heute in Docker-Containern betreiben: Webserver, CMS, Datenbanken und ähnlich Profanes. Neu ist nur, dass die Dienste nun nicht mehr Seite an Seite auf dem Server ausgeführt werden, sondern jeder für sich in einem Docker-Container steckt und abgetrennt – und somit geschützt – von anderen arbeitet, aber weiterhin mit bestimmten anderen Diensten zusammenarbeiten muss. Man steht also meist vor dem Problem, vorhandene Dienste auf Docker zu migrieren und Konfigurationsdateien und Daten weiterzuverwenden.

Fertigware

Bevor Sie jedoch anfangen, eigene Docker-Images zu stricken, sollten Sie immer erst im Docker Hub nachsehen, was es bereits gibt. Das Rad muss nicht zum millionsten Mal neu erfunden werden, davon wird es auch nicht runder. Das beste Beispiel ist MySQL: Das „offizielle“ MySQL-Image aus dem Docker Hub wird gut gewartet und benötigt so gut wie keine Anpassungen für die Inbetriebnahme. Sofern man nicht eigene Patches für die Datenbank benötigt, kann das eigene Ergebnis kaum besser sein als das aus dem Docker Hub – weshalb Sie besser auf das fertige Image zurückgreifen anstatt Ihr eigenes zu bauen.