triggermeelmo 45c46e0f63
Some checks failed
Gitea CI/CD / dotnet-build-and-test (push) Failing after 43s
Gitea CI/CD / Set Tag Name (push) Has been skipped
Gitea CI/CD / docker-build-and-push (push) Has been skipped
Gitea CI/CD / Create Tag (push) Has been skipped
Merge branch 'staging' of https://git.triggermeelmo.com/Watcher/watcher into staging
2025-12-03 15:02:55 +01:00
2025-11-05 21:15:10 +01:00
2025-11-06 20:09:51 +01:00
2025-08-11 21:23:04 +02:00
2025-11-19 14:21:22 +01:00
2025-11-19 14:21:22 +01:00
2025-06-13 23:48:23 +02:00

Watcher - Server Monitoring Solution

Build Status .NET Version Docker Image Platform

Watcher ist eine umfassende Server- und Host-Monitoring-Lösung mit verteilter Architektur, die Echtzeit-Hardware-Metriken erfasst und über ein zentrales Web-Dashboard visualisiert.

📋 Überblick

Die Software besteht aus zwei Hauptkomponenten:

  • Host Agent: Sammelt Hardware-Metriken (CPU, GPU, RAM, Festplatte, Netzwerk) von den überwachten Servern
  • Zentrale Monitoring-Software: Web-basiertes Dashboard zur Visualisierung und Verwaltung der gesammelten Daten

Hauptfunktionen

  • Echtzeit-Hardware-Monitoring (CPU, GPU, RAM, Festplatte, Netzwerk)
  • Docker-Container-Überwachung mit Service Discovery
  • Web-basiertes Dashboard mit historischen Daten
  • Konfigurierbare Alarmschwellen
  • REST API mit Swagger-Dokumentation
  • Automatische Datenaufbewahrung (konfigurierbar)
  • Rootless Container-Betrieb für erhöhte Sicherheit

🚀 Installation & Start

Voraussetzungen

Schnellstart

  1. Repository klonen oder docker-compose.yaml herunterladen

    git clone https://git.triggermeelmo.com/Watcher/watcher.git
    cd watcher
    
  2. Umgebungsvariablen konfigurieren (optional)

    # .env Datei erstellen
    cp .env.example .env
    
    # Eigene UID/GID eintragen (für korrekte Dateiberechtigungen)
    echo "USER_UID=$(id -u)" >> .env
    echo "USER_GID=$(id -g)" >> .env
    
  3. Verzeichnisse mit korrekten Rechten erstellen

    mkdir -p data/db data/dumps data/logs
    chown -R $(id -u):$(id -g) data/
    
  4. Container starten

    docker compose up -d
    
  5. Dashboard aufrufen

    http://localhost:5000
    
  6. Standardanmeldung

    • Benutzername: admin
    • Passwort: changeme
    • ⚠️ Wichtig: Passwort nach dem ersten Login ändern!

Konfiguration

Wichtige Umgebungsvariablen

Variable Beschreibung Standard
USER_UID User-ID für Container (Dateiberechtigungen) 1000
USER_GID Gruppen-ID für Container 1000
IMAGE_VERSION Docker Image Version latest
METRIC_RETENTION_DAYS Datenspeicherdauer (Tage) 30
METRIC_CLEANUP_ENABLED Automatische Datenbereinigung true
FRONTEND_REFRESH_INTERVAL_SECONDS Dashboard Aktualisierungsrate 30

Vollständige Liste: siehe docker-compose.yaml

Volumes

  • ./data/db/app/persistence - SQLite-Datenbank
  • ./data/dumps/app/wwwroot/downloads/sqlite - Datenbank-Exports
  • ./data/logs/app/logs - Anwendungslogs

Sicherheit

Der Container läuft als non-root user mit konfigurierbarer UID/GID:

  • Standard: 1000:1000
  • Anpassbar über USER_UID und USER_GID in .env
  • Empfehlung: Eigene UID/GID verwenden für korrekte Dateiberechtigungen

📝 Lizenz

Dieses Projekt ist unter einer proprietären Lizenz lizenziert.


Entwickelt mit ❤️ unter Verwendung von .NET 8.0

Description
No description provided
Readme 5.6 MiB
2025-11-06 21:23:26 +01:00
Languages
C# 67.9%
HTML 29.2%
CSS 2.4%
Dockerfile 0.5%