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.