
Self-hosting Diun - der einfache Weg
Yulei ChenDeine Docker-Images aktuell zu halten ist eines der wichtigsten Dinge fuer Sicherheit und Stabilitaet. Diun (Docker Image Update Notifier) ist ein Open-Source-Tool, das deine Docker-Images ueberwacht und dir Benachrichtigungen schickt, sobald eine neue Version in der Registry verfuegbar ist. Kein manuelles Checken von Docker Hub mehr.
Sliplane macht es einfach, Diun als Background-Service neben deinen anderen Containern zu deployen. Mit Ein-Klick-Deployment laeuft Diun in wenigen Minuten - ueberwacht deine Images und informiert dich, wenn Updates verfuegbar sind.
Voraussetzungen
Bevor du loslegst, brauchst du einen Sliplane-Account (kostenlose Testphase verfuegbar).
Schnellstart
Sliplane bietet Ein-Klick-Deployment mit Presets.
- Klick auf den Deploy-Button oben
- Waehle ein Projekt aus
- Waehle einen Server (Wenn du dich gerade angemeldet hast, bekommst du einen 48-Stunden-Testserver)
- Klick auf Deploy!
Ueber das Preset
Das Ein-Klick-Deployment oben nutzt Sliplane's Diun-Preset. Das ist enthalten:
- Image:
crazymax/diun:4.31.0 - Persistenter Speicher gemountet auf
/datafuer die Diun-Datenbank - Watch-Schedule standardmaessig auf alle 6 Stunden gesetzt per Cron-Expression
- Docker Provider standardmaessig ueber Environment Variables aktiviert
- Watch by Default eingeschaltet, damit alle Container geprueft werden, wenn der Docker Provider verbunden ist
Diun ist ein Background-Service ohne Web-Interface. Du konfigurierst es ueber Environment Variables und pruefst die Ausgabe ueber Sliplane's integrierten Log-Viewer.
Hinweis: Der Docker Provider braucht Zugriff auf den Docker Socket (
/var/run/docker.sock), der auf Sliplane nicht standardmaessig gemountet ist. Diun startet und laeuft trotzdem problemlos, entdeckt aber keine Container automatisch. Du kannst stattdessen Diun's File Provider nutzen, um festzulegen, welche Images ueberwacht werden sollen.
Naechste Schritte
Nach dem Deployment laeuft Diun auf deinem Server. Damit du echten Nutzen daraus ziehst, brauchst du zwei Dinge: eine Liste von Images zum Ueberwachen und einen Notification-Provider fuer die Benachrichtigungen.
Benachrichtigungen einrichten
Diun unterstuetzt viele Notification-Provider. Fueg die entsprechenden Environment Variables in deinen Sliplane-Service-Einstellungen hinzu:
| Provider | Environment Variable | Wert |
|---|---|---|
| Slack | DIUN_NOTIF_SLACK_WEBHOOKURL | Deine Slack Incoming Webhook URL |
| Discord | DIUN_NOTIF_DISCORD_WEBHOOKURL | Deine Discord Webhook URL |
| Telegram | DIUN_NOTIF_TELEGRAM_TOKEN | Dein Bot-Token |
DIUN_NOTIF_TELEGRAM_CHATIDS | Komma-getrennte Chat-IDs | |
| Webhook | DIUN_NOTIF_WEBHOOK_ENDPOINT | Deine Webhook-Endpoint-URL |
DIUN_NOTIF_WEBHOOK_METHOD | GET oder POST |
Die vollstaendige Liste aller Notification-Provider (einschliesslich E-Mail, Gotify, Pushover, Matrix, Teams und mehr) findest du in der Diun Notification-Doku.
Watch-Schedule anpassen
Standardmaessig prueft Diun alle 6 Stunden auf Image-Updates. Du kannst das aendern, indem du die DIUN_WATCH_SCHEDULE Environment Variable auf eine andere Cron-Expression setzt:
| Zeitplan | Cron Expression |
|---|---|
| Alle 6 Stunden | 0 */6 * * * |
| Jede Stunde | 0 * * * * |
| Einmal taeglich um Mitternacht | 0 0 * * * |
| Alle 30 Minuten | */30 * * * * |
Logs pruefen
Da Diun kein Web-Interface hat, ist der beste Weg zum Pruefen Sliplane's Log-Viewer. Geh zu deinem Diun-Service und klick auf "Logs". Du solltest Meldungen sehen, wie Diun startet und seinen Watch-Schedule meldet.
Fuer detailliertere Ausgaben setz die LOG_LEVEL Environment Variable auf debug. Allgemeine Docker-Logging-Tipps findest du in unserem Post ueber Docker Logs.
Environment Variables
Hier sind die wichtigsten Environment Variables, die du anpassen kannst:
| Variable | Standard | Beschreibung |
|---|---|---|
TZ | Europe/Berlin | Zeitzone fuer das Scheduling |
LOG_LEVEL | info | Log-Detail (debug, info, warn, error) |
DIUN_WATCH_SCHEDULE | 0 */6 * * * | Cron-Expression fuer die Prueffrequenz |
DIUN_WATCH_JITTER | 30s | Zufaellige Verzoegerung pro geplantem Lauf |
DIUN_PROVIDERS_DOCKER | true | Docker Provider aktivieren |
DIUN_PROVIDERS_DOCKER_WATCHBYDEFAULT | true | Alle Container automatisch ueberwachen |
Kostenvergleich
Du kannst Diun auch bei anderen Cloud-Anbietern selbst hosten. Hier ein Preisvergleich der gaengigsten Anbieter:
| Anbieter | vCPU | RAM | Disk | Monatliche Kosten | Hinweis |
|---|---|---|---|---|---|
| Sliplane | 2 | 2 GB | 40 GB | €9 (~$10.65) | Flatrate, 1 TB Bandwidth, SSL inklusive |
| Fly.io | 2 | 2 GB | 40 GB | ~$18 | Disk und Bandwidth separat berechnet |
| Render | 1 | 2 GB | 40 GB | ~$35 | 100 GB Bandwidth, Disk separat berechnet |
| Railway | 2 | 2 GB | 40 GB | ~$67 + $20 Plan | Pro-Plan-Minimum, nutzungsbasiert, Bandwidth separat |
Klick hier, um die Berechnungen zu sehen.
(Angenommen eine durchgehend laufende Instanz mit 730 Stunden/Monat)
- Sliplane: Flatrate €9/Monat fuer den Base-Server. Unbegrenzte Services auf dem gleichen Server, 1 TB Egress und SSL inklusive.
- Fly.io:
shared-cpu-2x2 GB = $11.83/Mo + 40 GB Volume × $0.15/GB = $6 -> ~$17.83/Mo. Egress separat ($0.02/GB in EU). - Render: Standard ($25, 1 vCPU / 2 GB) plus 40 GB Disk × $0.25/GB = $10 -> ~$35/Mo. Pro (2 vCPU / 4 GB) kostet $85/Mo + Disk.
- Railway (Pro Plan): CPU 2 × $0.00000772/s × 2,628,000 s = $40.57; RAM 2 × $0.00000386/s × 2,628,000 s = $20.29; Volume 40 × $0.00000006/s × 2,628,000 s = $6.31 -> ~$67/Mo Compute, plus $20/Mo Pro-Plan-Minimum und $0.05/GB Egress.
Bandwidth-Kosten koennen bei nutzungsbasierten Anbietern schnell steigen. Nutz unser Bandwidth-Kostenvergleichs-Tool, um zu sehen, was dein Egress bei jedem Anbieter kosten wuerde.
FAQ
Was macht Diun eigentlich?
Diun ueberwacht Docker-Images, indem es regelmässig Registries (wie Docker Hub oder GitHub Container Registry) auf neue Versionen prueft. Wenn es ein Update findet, schickt es dir eine Benachrichtigung ueber deinen konfigurierten Provider (Slack, Discord, E-Mail, Webhook, etc.). Es aktualisiert deine Images nicht automatisch - es informiert dich nur, dass Updates verfuegbar sind, damit du selbst entscheiden kannst, wann du upgradest.
Kann ich auswaehlen, welche Container ueberwacht werden?
Ja. Standardmaessig ist DIUN_PROVIDERS_DOCKER_WATCHBYDEFAULT auf true gesetzt, was bedeutet, dass alle Container auf dem Server ueberwacht werden. Wenn du nur bestimmte Container ueberwachen willst, setz den Wert auf false und fueg das Label diun.enable=true zu den Containern hinzu, die du tracken willst.
Wie update ich Diun?
Aendere den Image-Tag in deinen Sliplane-Service-Einstellungen und deploye neu. Pruef Docker Hub fuer die neueste stabile Version. Passenderweise benachrichtigt dich Diun auch ueber seine eigenen Updates.
Gibt es Alternativen zu Diun?
Ja. Watchtower ist eine beliebte Alternative, die Container sowohl benachrichtigen als auch automatisch updaten kann. Ouroboros ist eine weitere Option, wird aber nicht mehr aktiv gepflegt. Wenn du speziell daran interessiert bist, deine selbst gehostete n8n-Instanz aktuell zu halten, haben wir dafuer einen eigenen Guide. Mehr Docker-Tools findest du in 5 awesome Docker Tools to make your life easier.
Braucht Diun viele Ressourcen?
Nein. Diun ist extrem leichtgewichtig - es ist in Go geschrieben und braucht minimale CPU und Memory. Es laeuft nur periodisch (standardmaessig alle 6 Stunden) und ist die meiste Zeit idle. Du kannst es problemlos neben deinen anderen Services auf dem gleichen Sliplane-Server betreiben, ohne Performance-Einbussen.