Watchtower vs. Diun: Automatische Docker-Image-Updates im Vergleich 2026

Wer Docker-Container selbst hostet, kennt das Problem: Container laufen monatelang mit veralteten Images, bis eine kritische Sicherheitslücke entdeckt wird. Watchtower und Diun (Docker Image Update Notifier) lösen dieses Problem auf unterschiedliche Art – Watchtower aktualisiert automatisch, Diun benachrichtigt nur.

Was ist Watchtower?

Watchtower ist ein weit verbreitetes Open-Source-Tool, das Docker-Container überwacht und bei neuen Image-Versionen automatisch neu startet. Es läuft selbst als Docker-Container und hat Zugriff auf den Docker-Socket.

  • Lizenz: Apache 2.0
  • Funktion: Automatisches Neustarten von Containern mit aktuellen Images
  • Benachrichtigungen: Slack, E-Mail, Matrix, Telegram, Shoutrrr
  • Scheduling: Cron-basiert (Standard: täglich)

Was ist Diun?

Diun (Docker Image Update Notifier) ist ein leichtgewichtiges Tool, das Docker-Images auf neue Versionen prüft und nur benachrichtigt – es nimmt keine automatischen Änderungen vor. Es unterstützt neben Docker auch Kubernetes, Nomad und andere Container-Runtimes.

  • Lizenz: MIT
  • Funktion: Benachrichtigung bei neuen Image-Versionen (kein Auto-Update)
  • Benachrichtigungen: Slack, Telegram, E-Mail, Gotify, ntfy, Mattermost, Matrix, Teams und mehr
  • Scheduling: Cron-basiert, individuell konfigurierbar

Der Kern-Unterschied: Update vs. Benachrichtigung

Das ist die entscheidende Architekturentscheidung:

Merkmal Watchtower Diun
Automatisches Update ✅ (Restart mit neuem Image) ❌ (nur Benachrichtigung)
Benachrichtigungen
Kubernetes-Support
Selektive Updates ✅ (Labels) n/a
Private Registries
HTTP Webhook ✅ (Shoutrrr)

Watchtower im Detail

Watchtower läuft als privilegierter Container mit Zugriff auf /var/run/docker.sock. Es prüft in definierten Intervallen, ob neue Image-Tags vorliegen, und zieht diese automatisch.

services:
  watchtower:
    image: containrrr/watchtower
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    environment:
      - WATCHTOWER_SCHEDULE=0 0 4 * * *  # täglich 4 Uhr
      - WATCHTOWER_CLEANUP=true
      - WATCHTOWER_NOTIFICATIONS=slack
      - WATCHTOWER_NOTIFICATION_SLACK_HOOK_URL=https://hooks.slack.com/...
    restart: unless-stopped

Mit dem Label com.centurylinklabs.watchtower.enable=false lassen sich einzelne Container von automatischen Updates ausschließen.

Diun im Detail

Diun verwendet eine YAML-Konfigurationsdatei und ist deutlich flexibler in der Konfiguration von Image-Providern.

# diun.yml
watch:
  workers: 5
  schedule: "0 */6 * * *"  # alle 6 Stunden

notif:
  slack:
    webhookURL: https://hooks.slack.com/...

providers:
  docker:
    watchStopped: true
  file:
    filename: /etc/diun/watch.yml

Sicherheitsbetrachtung

Automatische Updates durch Watchtower sind riskant in Produktionsumgebungen: Ein fehlerhaftes Image-Update kann Dienste zum Absturz bringen, ohne dass jemand es bemerkt. Für kritische Services empfiehlt sich Diun mit anschließender manueller Kontrolle.

Für Homelab und Test-Umgebungen ist Watchtower praktisch: alles bleibt automatisch aktuell, ohne manuellen Aufwand.

Welches Tool für welche Umgebung?

Watchtower eignet sich für:

  • Homelab und persönliche Server ohne kritische Anforderungen
  • Umgebungen, wo manuelle Updates regelmäßig vergessen werden
  • Schnelle Patches bei Security-Fixes (z.B. Log4j-artige Vorfälle)
  • Teams ohne dediziertes Ops-Personal

Diun eignet sich für:

  • Produktionsumgebungen mit Change-Management-Prozessen
  • Kubernetes-Setups (Watchtower unterstützt kein Kubernetes)
  • Umgebungen mit mehreren Container-Runtimes (Docker + Nomad)
  • Sicherheitsbewusste Betreiber, die Updates manuell genehmigen

Gemeinsame Nutzung

Viele Admins nutzen beide Tools kombiniert: Diun für alle wichtigen Dienste (nur Benachrichtigung) und Watchtower für unkritische Tools wie Monitoring-Dashboards oder interne Test-Services (automatisches Update).

Alternativen

  • Renovate: Update-Automation für Container-Images in Git-Repositories (GitOps-Workflow)
  • ArgoCD Image Updater: Kubernetes-native Image-Update-Automation für ArgoCD
  • Dependabot: GitHub-native Dependency-Updates (nur für GitHub)

Fazit

Für den Einstieg ins Homelab-Management ist Watchtower die einfachste Lösung – zero Configuration, automatische Updates. Für Produktionsumgebungen oder Kubernetes ist Diun die bessere Wahl: vollständige Kontrolle, keine unerwarteten Restarts, maximale Kompatibilität.

Verwandte Technologien im Techradar

Weiterführende Artikel