Zum Inhalt

Docker Update Monitor

Überwachung aller Docker Container auf dem NAS und Update-Steuerung direkt aus Home Assistant.

Erstellt: 2026-02-22 | Status: Aktiv

Beschreibung

Das System überwacht automatisch alle Docker Container auf dem NAS (192.168.178.20) auf neue Image-Versionen. Bei einem verfügbaren Update sendet der NAS einen Webhook an Home Assistant — dort erscheint eine Benachrichtigung mit Link zu den Release Notes, und der Update-Prozess kann per Knopfdruck ausgelöst werden.

Komponenten

Diun (NAS)

Diun (Docker Image Update Notifier) läuft als Docker Container auf dem NAS und prüft täglich um 08:00 alle laufenden Container auf neue Images.

  • Compose: /usr/anatol/dockeruser/compose/diun/docker-compose.yml
  • Config: /usr/anatol/dockeruser/data/diun/diun.yml
  • Version: crazymax/diun:latest (v4.x)
  • Zeitplan: Täglich 08:00 (Cron: 0 8 * * *)
  • Container überwacht: Alle laufenden Container (watchByDefault: true)
  • Benachrichtigung: HTTP Webhook an HA

Update-Script (NAS)

  • Pfad: /usr/anatol/claude/bin/docker-update.sh
  • Funktion: Findet automatisch das passende Compose-File und führt docker compose pull + up -d für den ganzen Stack aus
  • Besonderheit: Compose-Files heißen [name].yml (nicht docker-compose.yml), werden automatisch erkannt

Home Assistant Integration

Package-Datei: /config/packages/docker_monitor.yaml

| Entity | Typ | Beschreibung | | input_text.docker_update_pending | Text | Komma-getrennte Liste der Container mit ausstehenden Updates | | input_select.docker_update_select | Auswahl | Container für Update auswählen | | shell_command.docker_update_container | Shell | SSH-Befehl zum NAS (läuft im Hintergrund via nohup) | | script.docker_update_run | Script | Update starten + Pending-Liste bereinigen | | automation: docker_monitor_diun_webhook | Automation | Empfängt Diun Webhooks, aktualisiert Entities, zeigt Benachrichtigung |

Webhook-ID: diun-docker-updates

Ablauf

  1. Diun erkennt neues Image (Digest-Änderung)
  2. Webhook → HA: { status: "update", image: "...", hub_link: "...", metadata: { container_name: "..." } }
  3. HA Automation fügt Container zur Pending-Liste hinzu
  4. Persistent Notification erscheint mit Release-Notes-Link
  5. User wählt Container im Dashboard → Update starten
  6. SSH → NAS → Update-Script führt docker compose pull && up -d aus (Hintergrund)
  7. Container aus Pending-Liste entfernt

Dashboard

Das Server-Dashboard wurde vollständig im Mushroom-Stil neu aufgebaut. Die Docker-Monitor Section ist darin integriert.

Aufbau (14 Cards):

| Section | Inhalt | | Status-Chips | Docker · SMB · SSH (grün/rot) + OMV Update + Reboot-Pending Alert | | System | Stromverbrauch · CPU · RAM · Uptime / Netzwerk RX · TX (Glances Echtzeit) | | Speicher | 5 Disks: Boot NVMe · sda SSD · SSD 2TB · Exos 18TB · MG08 16TB | | Temperaturen | CPU · MB · APU / 5 Disk-Temps (nvme, sda, sdb, sdc, sdd) | | Lüfter | CPU · Intake · Outtake (rpm) | | Docker Updates | Status-Card · Container wählen · Update starten |

Netzwerk-Werte kommen von Glances (Echtzeit Mbit/s) — nicht vom OMV-Sensor (der liefert nur den Lifetime-Durchschnitt).

Bekannte Einschränkungen

  • Diun v4 hat kein excludedImages → Interne Container (postgres, redis) werden ebenfalls überwacht (aber selten Updates)
  • Update startet immer den ganzen Compose-Stack (nicht einzelne Services)
  • Kein Changelog-Text — aber hub_link in der Notification verlinkt direkt zu den GitHub Releases
  • Webhook-Ausfall: Diun sendet pro Digest-Änderung genau einmal. Wenn HA beim Scan-Zeitpunkt (08:00) neu startet, geht die Notification verloren. Workaround: docker restart diun auf dem NAS → scannt sofort und sendet erneut

Changelog

| Datum | Version | Änderung | | 2026-02-24 | 1.3 | Webhook-Ausfallverhalten dokumentiert; Plex manuell via Webhook+Dashboard aktualisiert | | 2026-02-22 | 1.2 | Server-Dashboard komplett im Mushroom-Stil: System, Speicher, Temps, Lüfter, Services-Chips, Netzwerk (Glances) | | 2026-02-22 | 1.1 | Dashboard ins Server-Dashboard integriert (Mushroom-Stil) | | 2026-02-22 | 1.0 | Erstimplementierung: Diun + HA Webhook + Update-Script |


← Zurück zur Projektübersicht | ← OMV Übersicht