Dockhand - Docker-Container-Lifecycle automatisieren

Dockhand - Docker-Container-Lifecycle automatisieren

Dockhand ist ein Automatisierungstool für Docker, das Container anhand von Regeln und Zeitplänen automatisch startet, stoppt und aktualisiert.

Was ist Dockhand?

Dockhand ermöglicht die regelbasierte Automatisierung von Docker-Container-Lebenszyklen. Typische Anwendungsfälle sind das automatische Neustartetn von Containern nach Image-Updates, das zeitgesteuerte Herunterfahren ressourcenintensiver Container außerhalb der Nutzungszeiten oder das Reagieren auf externe Trigger. Dockhand liest seine Konfiguration aus einer YAML-Datei und überwacht kontinuierlich den Zustand der definierten Container. Im Vergleich zu Watchtower bietet Dockhand feinere Kontrolle über Zeitpläne und Bedingungen für automatische Aktionen.

Voraussetzungen

  • Docker 20.10+ / Docker Compose
  • Zugriff auf den Docker-Socket
  • Konfigurationsdatei mit definierten Regeln und Zeitplänen

Compose-Beispiel

services:
  dockhand:
    image: boxboat/dockhand:latest
    container_name: dockhand
    restart: unless-stopped
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock:ro
      - ./dockhand.yaml:/etc/dockhand/dockhand.yaml:ro
    environment:
      - TZ=Europe/Berlin
      - LOG_LEVEL=info

Hinweise

  • Die dockhand.yaml definiert Profile für Container-Gruppen – z. B. alle Container mit einem bestimmten Label automatisch aktualisieren.
  • Automatische Updates sollten in produktiven Umgebungen erst nach einem Staging-Test ausgelöst werden; Dockhand unterstützt dafür mehrstufige Pipelines.
  • Labels an Container anhängen (dockhand.profile=production), um sie der richtigen Automatisierungsgruppe zuzuordnen.
  • Logs regelmäßig auf fehlgeschlagene Aktionen prüfen – bei Image-Pull-Fehlern bleibt der alte Container aktiv, was leicht übersehen wird.