Watcher - Server Monitoring Solution
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
-
Repository klonen oder docker-compose.yaml herunterladen
git clone https://git.triggermeelmo.com/Watcher/watcher.git cd watcher -
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 -
Verzeichnisse mit korrekten Rechten erstellen
mkdir -p data/db data/dumps data/logs chown -R $(id -u):$(id -g) data/ -
Container starten
docker compose up -d -
Dashboard aufrufen
http://localhost:5000 -
Standardanmeldung
- Benutzername:
admin - Passwort:
changeme - ⚠️ Wichtig: Passwort nach dem ersten Login ändern!
- Benutzername:
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_UIDundUSER_GIDin.env - Empfehlung: Eigene UID/GID verwenden für korrekte Dateiberechtigungen
📝 Lizenz
Dieses Projekt ist unter einer proprietären Lizenz lizenziert.
🔗 Links
- Repository: https://git.triggermeelmo.com/Watcher/watcher
- Container Registry: https://git.triggermeelmo.com/watcher/-/packages/container/watcher-server
- Issue Tracker: https://git.triggermeelmo.com/Watcher/watcher/issues
Entwickelt mit ❤️ unter Verwendung von .NET 8.0
Description
Releases
2
Release v0.2.0
Latest
Languages
C#
67.9%
HTML
29.2%
CSS
2.4%
Dockerfile
0.5%