Uptime Kuma Installation: Self-Hosted Uptime-Monitoring
Uptime Kuma Installation mit Docker, HTTP/TCP/DNS/Ping-Monitoring, Benachrichtigungsintegrationen (Telegram, Discord, E-Mail), Status-Page-Erstellung und Alert-Konfiguration.
Inhaltsverzeichnis
Uptime Kuma Installation: Self-Hosted Uptime-Monitoring
Uptime Kuma ist ein Self-Hosted Uptime-Monitoring-Tool, das den Betriebsstatus Ihrer Dienste und Websites überwacht. Mit einer schönen Weboberfläche, verschiedenen Monitor-Typen und umfangreichen Benachrichtigungsintegrationen bietet es eine großartige Alternative zu Uptime Robot.
Was ist Uptime Kuma?
Herausragende Merkmale von Uptime Kuma:
- Monitor-Typen: HTTP(S), TCP, DNS, Ping, Docker Container, Steam Game Server
- Benachrichtigungskanäle: Telegram, Discord, Slack, E-Mail, PagerDuty, Webhook und 90+ Integrationen
- Status-Page: Anpassbare Statusseite
- SSL-Überwachung: Verfolgung des Ablaufdatums von Zertifikaten
- Wartungsfenster: Geplante Wartungsfenster definieren
- 2FA-Unterstützung: Zwei-Faktor-Authentifizierung
- Mehrsprachig: 40+ Sprachen
Installation
Installation mit Docker (Empfohlen)
docker run -d \
--name uptime-kuma \
--restart=always \
-p 3001:3001 \
-v uptime-kuma:/app/data \
louislam/uptime-kuma:latest
Nach der Installation:
http://SERVER_IP:3001
Installation mit Docker Compose
# docker-compose.yml
version: '3.8'
services:
uptime-kuma:
image: louislam/uptime-kuma:latest
container_name: uptime-kuma
restart: unless-stopped
ports:
- "3001:3001"
volumes:
- uptime-kuma:/app/data
security_opt:
- no-new-privileges:true
volumes:
uptime-kuma:
docker compose up -d
HTTPS mit Nginx Reverse Proxy
server {
listen 80;
server_name uptime.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl http2;
server_name uptime.example.com;
ssl_certificate /etc/letsencrypt/live/uptime.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/uptime.example.com/privkey.pem;
location / {
proxy_pass http://localhost:3001;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_cache_bypass $http_upgrade;
}
}
Monitor-Typen
HTTP(S)-Monitor
Monitor Type: HTTP(S)
Friendly Name: Startseite
URL: https://example.com
Heartbeat Interval: 60 Sekunden
Retries: 3
Accepted Status Codes: 200-299
TCP-Port-Monitor
Monitor Type: TCP Port
Friendly Name: MySQL-Datenbank
Hostname: db.example.com
Port: 3306
Heartbeat Interval: 120 Sekunden
DNS-Monitor
Monitor Type: DNS
Friendly Name: DNS-Prüfung
Hostname: example.com
Resolver Server: 8.8.8.8
DNS Resolve Type: A
Expected Value: 1.2.3.4
SSL-Zertifikat-Überwachung
Monitor Type: HTTP(S)
URL: https://example.com
# Im SSL-Tab:
Enable SSL Certificate Expiry Notification: AN
Notify Before (days): 30
Benachrichtigungsintegrationen
Telegram-Benachrichtigung
# 1. Bot über BotFather erstellen
# Bot-Token erhalten: 1234567890:ABCdefGHIjklMNOpqrSTUvwxYZ
# 2. Chat-ID ermitteln
curl https://api.telegram.org/bot<TOKEN>/getUpdates
# Wert "chat":{"id":123456789} notieren
Notification Type: Telegram
Bot Token: 1234567890:ABCdefGHIjklMNOpqrSTUvwxYZ
Chat ID: 123456789
Discord-Benachrichtigung
# Webhook in Discord erstellen:
# Server-Einstellungen → Integrationen → Webhooks → Neuer Webhook
# Webhook-URL kopieren
Notification Type: Discord
Discord Webhook URL: https://discord.com/api/webhooks/...
Username: Uptime Kuma
E-Mail (SMTP)-Benachrichtigung
Notification Type: Email (SMTP)
From Email: alerts@example.com
To Email: admin@example.com
SMTP Host: smtp.gmail.com
SMTP Port: 587
SMTP Username: alerts@example.com
SMTP Password: app-passwort
Security: STARTTLS
Status-Page erstellen
Neue Status-Page
- Status Pages → New Status Page
- Seitenname und Slug festlegen:
status.example.com - Logo und Titel hinzufügen
- Monitore zu Gruppen hinzufügen
- Mit Save speichern
# Status-Page-Einstellungen:
Title: Dienststatus
Description: Echtzeit-Status aller unserer Dienste
Theme: Auto (Hell/Dunkel)
Custom Domain: status.example.com
Wartungsfenster
Maintenance → Add Maintenance
Title: Wöchentliche Wartung
Strategy: Recurring
Start Time: Sonntag 02:00
End Time: Sonntag 04:00
Timezone: Europe/Berlin
Affected Monitors: Alle Monitore
Uptime Kuma aktualisieren
docker stop uptime-kuma
docker rm uptime-kuma
docker pull louislam/uptime-kuma:latest
docker run -d \
--name uptime-kuma \
--restart=always \
-p 3001:3001 \
-v uptime-kuma:/app/data \
louislam/uptime-kuma:latest
Datensicherung
# Uptime Kuma-Daten sichern
docker exec uptime-kuma tar -czf /tmp/backup.tar.gz /app/data
docker cp uptime-kuma:/tmp/backup.tar.gz ./uptime-kuma-backup-$(date +%Y%m%d).tar.gz
Sie können alle auf Ihren REXE-Servern laufenden Dienste mit Uptime Kuma überwachen. Mit Telegram-Benachrichtigungen werden Sie sofort über Dienstausfälle informiert.
Verwandte Artikel
Coolify Installation: Anwendungs-Deployment mit Self-Hosted PaaS
Coolify-Installation, Docker- und Git-Integration, Anwendungs-Deployment, Datenbankverwaltung, SSL-Zertifikate, Umgebungsvariablen und Self-Hosted PaaS als Alternative zu Heroku/Netlify.
Nextcloud Installation: Self-Hosted Cloud-Speicher und Zusammenarbeit
Nextcloud-Installation mit Docker, Apache/Nginx-Konfiguration, Datenbankeinrichtung, SSL-Zertifikat, Dateisynchronisierung, App-Store und Leistungsoptimierung.
Docker-Verwaltung mit Portainer: Webbasierte Container-Kontrolle
Portainer CE Installation, Docker- und Kubernetes-Verwaltung, Stack-Deployment, Volume/Netzwerk-Verwaltung, Benutzerautorisierung, Webhook und GitOps-Integration.