Uptime-Kuma-Docker-Compose-Generator
Erstellen Sie eine compose.yaml-Datei für Uptime Kuma. Wählen Sie die Image-Version und -Variante, Ports, den Speicherort der Daten, die Docker-Überwachung sowie eine SQLite- oder MariaDB-Datenbank aus und erhalten Sie eine sofort ausführbare Datei.
Eingabe
Ausgabe
- Dateisysteme wie NFS werden für den Datenspeicherort nicht unterstützt. Verwenden Sie einen lokalen Ordner oder ein Docker-Volume.
Readme
Was ist Uptime Kuma?
Uptime Kuma ist ein selbst gehostetes Monitoring-Tool. Es überprüft regelmäßig Websites, TCP-Ports, DNS-Einträge, Docker-Container und mehr, sendet eine Benachrichtigung, wenn etwas ausfällt, und kann Statusseiten veröffentlichen. Das Projekt stellt ein offizielles Image bereit, louislam/uptime-kuma, das auf Port 3001 lauscht und alle Daten in einem Ordner /app/data speichert.
Beschreibung des Werkzeugs
Dieses Werkzeug erstellt eine compose.yaml für Uptime Kuma. Es verwendet die Datei aus dem Uptime-Kuma-Repository als Ausgangspunkt und ergänzt die Einstellungen, die normalerweise benötigt werden: die Image-Version und -Variante, den Host-Port und die Bind-Adresse, den Speicherort der Daten, den Zugriff auf den Docker-Socket für Docker-Host-Monitore sowie die Datenbank. Bei Verwendung einer MariaDB-Datenbank in einem eigenen Container fügt das Werkzeug einen zweiten Dienst mit einer Zustandsprüfung hinzu, sodass Uptime Kuma erst gestartet wird, wenn die Datenbank bereit ist. Einstellungen, für die das Formular kein Feld bietet, können als Umgebungsvariablen hinzugefügt werden. Alles wird in Ihrem Browser erstellt.
Funktionen
- Die Image-Tags
2,1undbetamit den Standard-, slim-, rootless- und slim-rootless-Varianten von Version 2 - Host-Port und eine Bind-Adresse wie
127.0.0.1zur Verwendung hinter einem Reverse Proxy - Ein Datenordner auf dem Host oder ein benanntes Docker-Volume, das für Sie deklariert wird
- Optionaler Zugriff auf
/var/run/docker.sockfür Docker-Host-Monitore, mit einem Hinweis darauf, was dieser Zugriff ermöglicht - SQLite, die integrierte MariaDB, ein der Datei hinzugefügter MariaDB-Container oder ein externer MariaDB-Server
- Ein generiertes Datenbankpasswort, bei dem
$-Zeichen maskiert werden, damit Compose sie beibehält - Optionen für die Einbettung in ein iframe, die WebSocket-Origin-Prüfung und ein Cloudflare-Tunnel-Token
- Beliebige andere Umgebungsvariable, Kommentare zur Erklärung der Datei und ein Download als
compose.yaml
Beispiele
Mit den Standardeinstellungen wird dieselbe Datei wie im Uptime-Kuma-Repository erstellt:
services:
uptime-kuma:
image: louislam/uptime-kuma:2
ports:
- "3001:3001"
volumes:
- ./data:/app/data
restart: unless-stoppedWenn ein MariaDB-Container als Datenbank ausgewählt wird, fügt das Werkzeug einen mariadb-Dienst hinzu und verbindet Uptime Kuma über UPTIME_KUMA_DB_TYPE, UPTIME_KUMA_DB_HOSTNAME und die übrigen UPTIME_KUMA_DB_*-Variablen damit.
Tipps
- Speichern Sie das Ergebnis als
compose.yamlin einem leeren Ordner und starten Sie es mitdocker compose up -d. Öffnen Sie anschließendhttp://localhost:3001 - Dateisysteme wie NFS werden für den Datenordner nicht unterstützt. Verwenden Sie einen lokalen Ordner oder ein Docker-Volume
- Slim-Images enthalten kein Chromium, das der echte Browser-Monitor benötigt, und auch keine integrierte MariaDB
- Rootless-Images werden als Benutzer
nodemit der UID 1000 ausgeführt. Ein Datenordner auf dem Host muss daher für diesen Benutzer beschreibbar sein - Uptime Kuma verwendet WebSockets. Wenn Sie es hinter einem Reverse Proxy betreiben, muss der Proxy die Header
UpgradeundConnectionweiterleiten - Der Docker-Socket gibt Uptime Kuma vollständige Kontrolle über Docker auf dem Host. Binden Sie ihn nur ein, wenn Sie Docker-Host-Monitore benötigen, und machen Sie Uptime Kuma nicht aus dem Internet erreichbar
- Version 1 unterstützt nur SQLite, daher werden die Datenbankoptionen dafür ausgeblendet
- Passwortfelder werden als Klartext in der Datei gespeichert. Halten Sie die Datei privat oder verschieben Sie das Passwort in eine
.env-Datei und referenzieren Sie es als${DB_PASSWORD}