Software Berater Logo Software Berater #neuland seit 1993

Alles schön verpackt: Meine Docker-Sammlung

Inzwischen habe ich sieben Anwendungen dockerisiert und veröffentliche meine docker-compose Konfigurationen, ua für Matomo, Gitea, Nextcloud und Drone.

Auf meinem Server betreibe ich eine Reihe von Anwendungen für meinen privaten Gebrauch. Nach anfänglicher Lernkurve ist jetzt alles in Docker-Container verpackt. Das hat für mich den Vorteil, dass ich Aktualisierungen sehr leicht einspielen kann und fast alle Nutzdaten auf meinem Server konzentriert unter einem Pfad liegen. Das macht die Datensicherung einfach.

Aktuell betreibe ich:

Die Docker Compose Konfigurationen findest du hier:

https://git.software-berater.net/christian/dockerfiles

Ich versuche, die Konfigurationen gleichförmig aufzubauen, was nicht zuletzt für mich den Merkaufwand reduziert. (Von wegen Kopf wie Sieb und so…) Also

  1. liegen alle Anwendungen in jeweils einem eigenen Unterverzeichnis
  2. verwende ich .env Dateien zur Ablage von vertraulichen Daten wie Passworten oä
  3. verwende ich ein systemd Template um die Anwendungen als Systemdienst zu etablieren

Die Anwendungen werden inzwischen durch Traefik nach außen bekannt gemacht, siehe dazu der neue Blogpost.

Automatische Neustarts

Einige Dienste (wie diese Webseite) sollen neu gestartet werden, wenn sich das Image ändert. Den Neustart ereiche ich mit einem systemd Watcher, der eine Datei auf dem Host beobachtet, welche durch den build-Prozess erneuert wird. Verändert sich die beobachtete Datei, so startet der Watcher den Service neu.

Der Watcher besteht aus einer watcher Unit und einer path Unit. Beide müssen für sich aktiviert und gestartet werden, um wirksam zu sein.

systemd watcher-Unit

dc-watcher@.service auf git.software-berater.net

systemd path-Unit

dc-watcher@.path auf git.software-berater.net

Was ist nicht dockerisiert?

Der lokale SMTP/IMAP-Mailserver ist nicht containerisiert. Gerade die SMTP-Binaries werden verwendet, um Nachrichten vom System zu bekommen. Auch wenn es mehr als 1.200 Images für Postfix auf Docker Hub gibt.