Webseiten überwachen mit Uptime Kuma

This page is also available in English

Mit Uptime Kuma kann schnell und einfach eine Überwachung für verschiedene Websites eingerichtet werden. Die vorhandenen Monitor-Typen reichen von einem einfachen Ping, über einen Port-Check bishin zum Überwachen bestimmter Services:

 

Profil:

SoftwareUptime-kuma
GitHubhttps://github.com/louislam/uptime-kuma
aktuelle Version 1.19.6
gefunden22.01.2023

Docker Basics

Docker ermöglicht es, Services oder Applikationen per Befehl in einem sogenannten Container zu starten.
Ein Container ist eine vom Betriebssystem (OS) unabhängige isolierte Umgebung:
Beim ersten Start eines Containers, lädt Docker selbstständig alle notwendigen Quellen
aus dem Internet.
Docker kann unter Windows, macOS oder einer Linux-Distribution installiert werden,
siehe auch: Docker

Damit Uptime Kuma sicher vom Internet erreicht werden kann, setze ich einen Let's Encrypt Reverse-Proxy ein. Zuerst habe ich Nginx als Reverse-Proxy verwendet, diesen aber später mit Traefik ersetzt. Der Reverse-Proxy stellt eine verschlüsselte HTTPS-Verbindung zur Verfügung und ermöglicht es mehrere Websites auf einem Server zu betreiben.

Schritt für Schritt Uptime Kuma in Docker inklusive Zugriff vom Internet

Hardwareanforderung:
  1. Für die Docker-Installation kann eine nahezu beliebige Hardware verwendet werden: Zum Beispiel ein virtueller Server eines Providers, oder für zu Hause: ein Mini-PC, Notebook, Raspberry PI, MAC, ein NAS: QNAP, Synology oder eine beliebige andere Hardware auf der sich Windows oder Linux installieren lässt.

Schematische Darstellung: Zugriff vom Internet
Voraussetzungen für den Internetzugriff:
  1. Bei einem gemieteten Server eines Providers vergibt dieser eine IP-Adresse. Wer einen Server im eigenen Heimnetzwerk betreiben will, benötigt ein Port-Forwarding.
  2. Der Aufruf aus dem Internet erfolgt am besten über eine Domain mit einem DNS-Eintrag auf die öffentliche IP-Adresse, siehe Domain und dessen Verwaltung. Wer keine eigene Domain besitzt, kann für den Zugriff auf das eigene Heimnetzwerk auch einen DynDNS-Service verwenden.
  3. Für die Zertifikatsverwaltung und den sicheren Zugriff auf die Webservices verwende ich einen Reverse Proxy und Let's Encrypt-Zertifikate
Das eigentliche Docker Setup für Uptime Kuma:
  1. docker-compose.yml anlegen und anpassen
  2. Container starten und 
  3. Einrichten

docker-compose.yml-Datei:

Um Uptime Kuma mittels docker compose zu starten, kann das offizielle Docker Image verwendet werden. Das Image können mit einer simplen docker-compose.yml Datei heruntergeladen, erstellt und gestartet werden. Die Datei kann mit einem beliebigen Texteditor wie folgt befüllt und dann angepasst werden:

Dateiname: docker-compose.yml, Inhalt:

[+]
version: '3.1'
services:
  uptime-web:
    image: louislam/uptime-kuma
    container_name: uptime-kuma
    restart: always
    expose:
      - 3001
   #Für einen direkten Test-Zugriff, in den folgenden 2 Zeilen "#" entfernen. Aufruf: http://localhost:3001 oder http://ServerIP:3001
    #ports:   
      #- "3001:3001" 
   #Labels für ReverseProxy, siehe: https://www.libe.net/traefik
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.uptime.rule=Host(`uptime.domain.tld`)"      
      - "traefik.http.routers.uptime.entrypoints=web"
      - "traefik.http.routers.uptime.entrypoints=websecure"
      - "traefik.http.routers.uptime.tls.certresolver=myresolver"
      - "traefik.http.services.uptime.loadbalancer.server.port=3001"

    volumes:
      -  ./data:/app/data

#Ohne dem Einsatz eines Reverse Proxy (https://www.libe.net/traefik) fehlt voraussichtlich das Netzwerk webproxy 
#und die folgenden Zeilen können entfernt oder auskommentiert werden. Alternativ kann das Netzwerk mit "docker network create webproxy" erstellt werden
networks:
  default:
    external:
      name: webproxy

Für einen direkten Zugriff über die IP-Adresse oder localhost - auch ohne Reverse Proxy, DNS oder öffentlicher IP - kann die auskommentierte Port-Einstellung für Testzwecke aktiviert werden, indem „#“ vor „ports“ und „-"3001:3001"“ entfernt wird. Für den Internetzugriff über den Traefik Reverse Proxymuss in den Labels die Domäne mit den zuvor erstellten DNS-Einträgen ersetzt werden (im Beispiel: uptime.domain.tld). Das Beispiel verwendet Bind-Mounts und keine Volumes für das permanente Speichern der Daten. Siehe: Docker Daten speichern: Docker Volumes vs. Host-Ordner

Container starten

Der Start erfolgt aus dem Ordner der docker-compose.yml-Datei mit dem Befehl„"docker-compose up“:

docker-compose up -d

Inbetriebnahme / erster Aufruf der Weboberfläche

Alarme: Benachrichtigung für die folgenden Dienste:

  • Alerta
  • AlertNow
  • AliyunSMS
  • Apprise (Unterstützung für 50+ Benachrichtigungsdienste)
  • Bark
  • ClickSend SMS
  • DingDing
  • Discord
  • Feishu
  • Google Chat (nur Google Workspace)
  • Gorush
  • Gotify
  • Home Assistant
  • Line Messenger
  • LineNotify
  • LunaSea
  • Matrix
  • Mattermost
  • ntfy
  • Octopush
  • OneBot
  • PagerDuty
  • PromoSMS
  • Pushbullet
  • Push by Techulus
  • Push Deer
  • Pushover
  • Pushy
  • Rocket.chat
  • SerwerSMS.pl
  • Signal
  • Slack
  • E-Mail (SMTP)
  • Stackfield
  • Microsoft Teams
  • Telegram
  • Webhook
  • WeCom

📢 Hier wird voraussichtlich am 30.01.2023 ein neuer Beitrag verlinkt werden: Signal cli rest API Push-Nachrichten erlauben?

Fazit

Mit Uptime Kuma ist es sehr schnell möglich eine einfache Überwachung für Geräte einzurichten und die Verfügbarkeit zu messen. Zudem bietet Uptime Kuma die Möglichkeit Benachrichtigungen über eine Vielzahl von Anbietern zu versenden.

positive Bewertung({{pro_count}})
Beitrag bewerten:
{{percentage}} % positiv
negative Bewertung({{con_count}})

DANKE für deine Bewertung!

Aktualisiert: 22.01.2023 von Bernhard 🔔


Top-Artikel in diesem Bereich


ioBroker installieren - Docker
Mit ioBroker können verschiedene Automatisierungslösungen oder Geräte in einem System zusammengefasst werden. Um bestimmte Gateways oder Geräte ansprechen zu können, werden in ioBroker verschiedene Adapter verwendet.

Home-Assistant Docker Conbee 2 und Zigbee2MQTT / deCONZ
Dank zahlreicher Integrationsmöglichkeiten ist Home-Assistant eine einfache Plattform für das Steuern verschiedenster Smart-Home Geräte. Im Vergleich zu ioBroker ist mir der Start mit Home Assistant wesentlich einfacher gefallen. Während ich für ioBroker noch am Suchen war, welches Frontend ich für meine Dashboards verwenden könnte, hatte ich mit Home-Assistant out of the box ein fertig eingerichtetes System. Die Lovelance Dashboards von Home Assistant können einfach in der GUI zusammengeklickt...

Bitwarden in Docker betreiben - Setup Schritt für Schritt
Bitwarden ist ein webbasierter Passwort-Manager, ähnlich LastPass, aber Open Source und der Möglichkeit diesen selbst zu betreiben (hosten). Wie sich Bitwarden im Vergleich zu anderen Passwort-Managern einordnet, habe ich auf folgender Seite überlegt: Passwort-Manager sicher? KeePass vs. LastPass vs. Bitwarden. Bitwarden besteht aus mehreren Services, welche über verschiedene Container bereitgestellt werden können. Das relativ aufwändige Setup wurde mit "Bitwarden Unified" speziell für ein Selbs...

Fragen / Kommentare


Durch die weitere Nutzung der Seite stimmst du der Verwendung von Cookies zu Mehr Details