Zum Hauptinhalt springen

What's Up Docker Smart-Home-Integration, kostenlos und Open Source

What's Up Docker-Integration für Gladys Assistant

Von What's Up Docker (WUD) gefundene Docker-Container-Updates: Geräte, Szenen und Widget.

What's Up Docker (WUD) ist ein freies, selbst gehostetes Werkzeug, das deine Docker-Container überwacht und dir meldet, wenn eine neuere Version ihres Images erscheint. Diese Integration bringt, was WUD gefunden hat, in Gladys: ein What's-Up-Docker-Gerät (erreichbar, überwachte Container, verfügbare Updates, Major-Updates), ein Gerät pro ausgewähltem Container (Update verfügbar, aktuelle Version, neue Version), Szenen, die starten, wenn ein Update gefunden oder angewendet wird, und ein Dashboard-Widget mit den zu aktualisierenden Containern.

Die Integration liest nur: Kein Container wird je aktualisiert, kein WUD-„Trigger“ gestartet. Das Update bleibt deine Entscheidung, in WUD oder von Hand.

Getestet mit einem echten WUD 9.5.0 und 8.4.0 (Docker, mit einem isolierten Docker-Daemon); noch nicht mit jeder Installation: Rückmeldungen sind in den Issues willkommen.

Was du brauchst​

  • Gladys Assistant 5.1.0 oder neuer.
  • What's Up Docker 8 oder 9, vom Gladys-Rechner aus erreichbar (standardmäßig Port 3000).
  • Mit WUD 9 (dort ist die Authentifizierung Pflicht): Benutzer und Passwort, oder besser ein API-Token. Mit WUD 8: Benutzer und Passwort, wenn du die Authentifizierung aktiviert hast, sonst nichts.

WUD fragt die Registries selbst ab, nach eigenem Zeitplan (standardmäßig stündlich): Gladys liest nur, was WUD gefunden hat, standardmäßig alle 5 Minuten, und verlangt eine Prüfung nur, wenn du „Jetzt prüfen“ drückst oder eine Szene es tut.

Erste Schritte​

1. Ein API-Token anlegen (WUD 9)​

Öffne in WUD dein Profil, dann API tokens, und lege ein Token an. Der Bereich read reicht, um die Updates zu verfolgen; füge write für „Jetzt prüfen“ hinzu. Du kannst auch Benutzer und Passwort verwenden.

2. Die Integration konfigurieren​

Öffne in Gladys Integrationen → What's Up Docker → Konfiguration:

  • Adresse von WUD: die Adresse, mit der du WUD öffnest, z. B. http://192.168.1.2:3000.
  • Benutzer und Passwort, oder API-Token (WUD 9): Das Token gewinnt, wenn beides ausgefüllt ist.
  • Container als Geräte: die Namen der Container, die du als Gladys-Geräte willst, durch Kommas getrennt (z. B. gladys, zigbee2mqtt), oder * für alle. Leer: nur das What's-Up-Docker-Gerät. Die Szenen-Auslöser und das Widget decken ohnehin alle Container ab.
  • Aktualisierungsintervall: 2, 5, 10 oder 15 Minuten.
  • Selbstsignierte Zertifikate akzeptieren: nur für eine https://-Adresse mit eigenem Zertifikat.
  • Sprache der Namen: die Sprache der Funktionsnamen und der Meldungen (standardmäßig Französisch).

Speichere und nutze dann Verbindung testen: Die Antwort nennt die Version von WUD, die Zahl der Container und der Updates.

3. Die Geräte hinzufügen​

Öffne den Tab Entdecken der Integration und füge die gewünschten Geräte hinzu.

Die Geräte​

What's Up Docker (der Server):

  • Erreichbar: 1, solange WUD antwortet, sonst 0.
  • Überwachte Container: die Container, die WUD überwacht.
  • Verfügbare Updates: die Container mit einem neueren Image.
  • Major-Updates: davon die großen Versionssprünge (z. B. 7.x → 8.x).
  • Zuletzt gefundenes Update: das Datum, an dem die Integration zuletzt ein neues Update gesehen hat (die WUD-API liefert kein Datum der „letzten Prüfung“).

Ein Gerät pro ausgewähltem Container (mit dem Namen des Containers, das Image als Modell):

  • Update verfügbar: 1, solange WUD ein Update für ihn hat.
  • Aktuelle Version: der Tag, den er nutzt, z. B. 1.25.0 (und der kurze Digest bei einem beweglichen Tag wie latest).
  • Neue Version: der neuere Tag, den WUD gefunden hat, oder „Aktuell“.

Ein Container wird an seinem Namen und seinem WUD-Watcher erkannt, nicht an seiner Docker-ID: Ein für das Update neu erstellter Container bleibt dasselbe Gerät.

Dashboard​

Das Widget Container-Updates zeigt die Zahl der Updates und der Major-Updates, dann die Container mit Update, Major zuerst: Name, aktuelle → neue Version und ein Abzeichen (Major, Minor, Patch, Digest, Update). Ein Tippen zeigt das Image und einen Link „Mehr erfahren“ (die Seite des Images oder die Versionshinweise, wenn WUD dafür eine Link-Vorlage hat). Gibt es keines: „Alle Container sind aktuell.“. Die Schaltfläche Jetzt prüfen lässt WUD alle Container prüfen (WUD 9 antwortet im Hintergrund, das Widget folgt innerhalb einer Minute).

Szenen​

Auslöser​

  • Container-Update verfügbar: WUD hat eine neue Version des Images eines Containers gefunden. Einmal pro Version gemeldet, für alle Container (als Gerät hinzugefügt oder nicht). Filter: der Container, die Art des Updates (Major, Minor, Patch, Digest des gleichen Tags, andere). Variablen: Container, Image, aktuelle Version, neue Version, Art des Updates.
  • Container-Update angewendet: Ein Container mit Update läuft jetzt mit einem neuen Image, ohne ausstehendes Update. Variablen: Container, Image, Version, vorherige Version.

Ein stummgeschaltetes Update („Snooze“ in WUD 9) gilt nicht als angewendet und kommt zurück, ohne doppelt gemeldet zu werden.

Aktionen​

  • Container-Updates prüfen: WUD fragt die Registries jetzt erneut ab, für einen Container oder alle (leeres Feld oder das What's-Up-Docker-Gerät). Aktualisiert nie einen Container. Ausgabe: die Zahl der geprüften Container. Mit einem API-Token braucht es den Bereich write.

Szenen-Ideen​

  • Jeden Sonntag um 10:00 Container-Updates prüfen, 2 Minuten warten (WUD prüft im Hintergrund) und dann eine Nachricht mit [Verfügbare Updates] senden, wenn der Wert über 0 liegt.
  • Container-Update verfügbar, Art Major: schick dir eine Nachricht „container: current_version → new_version, lies die Versionshinweise vor dem Update“.
  • Container-Update angewendet für den Container gladys: eine Nachricht „Gladys auf version aktualisiert“ senden.

Fehlerbehebung​

  • „What's Up Docker antwortet nicht“: Prüfe Adresse und Port (standardmäßig 3000) und ob der Gladys-Rechner WUD erreicht.
  • „WUD verlangt Benutzer und Passwort oder ein API-Token“: WUD 9 braucht immer Zugangsdaten; trage Benutzer und Passwort oder ein Token ein.
  • „Benutzer, Passwort oder Token von WUD abgelehnt“: Kopiere das Token erneut oder prüfe das Passwort (ein OIDC-Benutzer kann keine Basic-Authentifizierung nutzen: nimm ein Token).
  • „Prüfung abgelehnt: Der WUD-Benutzer oder das Token darf nur lesen“: Gib dem Token den Bereich write oder nutze einen Benutzer mit der Rolle rw oder admin.
  • „die Adresse leitet um“: Gib die https://-Adresse ein.
  • Ein Container fehlt bei den Geräten: Prüfe seinen genauen Namen in WUD (den Containernamen, nicht das Image) und ob WUD ihn überwacht (Label wud.watch=true, wenn WUD_WATCHER_{name}_WATCHBYDEFAULT=false).
  • Kein Update für einen latest-Tag: WUD verfolgt den Digest eines beweglichen Tags nur, wenn die Digest-Überwachung aktiv ist (Label wud.watch.digest=true).

Grenzen​

  • Nur lesend: kein Update, kein Neustart, kein WUD-„Trigger“.
  • Das erste Lesen nach der Installation merkt sich nur die schon offenen Updates: Diese werden nicht gemeldet, die nächsten schon.
  • Ein Update wird beim nächsten Lesen (standardmäßig 5 Minuten) bemerkt, nachdem WUD es gefunden hat, was wiederum vom Zeitplan von WUD abhängt.
  • Nur die Container, die WUD sieht: Ein von WUD ausgeschlossener Container existiert für die Integration nicht.
  • Für den Zustand der Container (läuft, gestoppt, CPU) gibt es die Docker-Integrationen des Stores, etwa gladys-docker oder gladys-portainer.

Konfigurationseinstellungen​

Diese Einstellungen fragt What's Up Docker in seinem Konfigurationsbildschirm in Gladys ab.

EinstellungTypPflichtfeldBeschreibung
Dein What's Up DockersectionNeinGib die Adresse von WUD (standardmäßig Port 3000) und die Zugangsdaten ein: Benutzer und Passwort oder ein API-Token (WUD 9, Profil → API tokens; Schreibrechte braucht nur „Jetzt prüfen“). Die Integration aktualisiert nie einen Container.
Adresse von WUDstringNeinDie Adresse, mit der du WUD öffnest, mit Port (standardmäßig 3000).
BenutzerstringNeinEin WUD-Benutzer (Basic-Authentifizierung). Leer lassen bei einem API-Token oder bei WUD 8 ohne Authentifizierung.
PasswortsecretNein
API-Token (WUD 9)secretNeinWird statt Benutzer und Passwort verwendet, wenn ausgefüllt.
Container als GerätestringNeinNamen der Container, die als Geräte angeboten werden, durch Kommas getrennt; * für alle. Die Auslöser und das Widget decken ohnehin alle Container ab.
AktualisierungsintervallselectNeinWie oft die Integration liest, was WUD gefunden hat. WUD fragt die Registries selbst nach eigenem Zeitplan ab (standardmäßig stündlich).
Selbstsignierte Zertifikate akzeptierenbooleanNeinNur für eine https://-Adresse mit eigenem Zertifikat.
Sprache der NamenselectNeinSprache der Funktionsnamen und der Meldungen der Integration.

So installierst du What's Up Docker in Gladys​

  1. Öffne in Gladys Integrationen: What's Up Docker erscheint im Katalog neben den nativen Integrationen, mit einem Community-Badge.
  2. Klicke auf Installieren. Gladys lädt das Docker-Image (ghcr.io/guim31/gladys-wud:1.0.0) herunter, startet es in einer vom Kern isolierten Sandbox und erzeugt die Oberfläche der Integration (Geräte, Erkennung und Konfiguration).
  3. Öffne den Bildschirm Konfiguration der Integration, fülle die Einstellungen aus und speichere.
  4. Du kannst sie auch direkt über die URL ihres Repositorys installieren: https://github.com/guim31/gladys-wud.

What's Up Docker benötigt Gladys >=5.1.0. Der Katalog in Gladys wird stündlich aktualisiert, eine neue Version ist also spätestens eine Stunde nach ihrer Veröffentlichung verfügbar.

Du nutzt Gladys noch nicht? Es ist kostenlos und Open Source: folge der Installationsanleitung, um loszulegen.

Über externe Integrationen​

What's Up Docker ist eine externe Integration: eine Community-Integration, die als Docker-Container verpackt und auf GitHub veröffentlicht wird. Gladys installiert sie mit einem Klick und führt sie in einer vom Kern isolierten Sandbox aus. Sie wird von guim31 veröffentlicht und gepflegt, nicht vom Gladys-Kernteam.

Abonniere den Newsletter von Gladys Assistant

Ein paar E-Mails im Monat zu neuen Releases und Neuigkeiten aus dem Projekt. Verschickt von Pierre-Gilles Leymarie, dem Gründer des Projekts. Jederzeit abbestellbar 🙂