From 40ee6a5020f4e2be3a6c96d4b9def4e58332ea3f Mon Sep 17 00:00:00 2001 From: traveler Date: Thu, 30 Apr 2026 13:37:33 -0500 Subject: [PATCH] docs(gremlin): update gatus --- Netgrimoire/Services/gatus/gatus.md | 87 +++++++++++++++++++---------- 1 file changed, 57 insertions(+), 30 deletions(-) diff --git a/Netgrimoire/Services/gatus/gatus.md b/Netgrimoire/Services/gatus/gatus.md index 228731c..7875965 100644 --- a/Netgrimoire/Services/gatus/gatus.md +++ b/Netgrimoire/Services/gatus/gatus.md @@ -1,24 +1,25 @@ --- title: gatus Stack -description: Real-time service monitor for NetGrimoire +description: Service Monitor for NetGrimoire published: true -date: 2026-04-30T15:45:48.722Z +date: 2026-04-30T18:35:55.433Z tags: docker,swarm,gatus,netgrimoire editor: markdown -dateCreated: 2026-04-30T15:45:48.722Z +dateCreated: 2026-04-30T18:35:55.433Z --- # gatus ## Overview -The gatus stack is a real-time service monitor for NetGrimoire, providing visibility into the health and performance of various services within the homelab. +The gatus stack is a Docker Swarm-based service monitor for NetGrimoire. It provides real-time monitoring and alerts for critical services, including Gatus itself. ## Architecture + | Service | Image | Port | Role | -|---------|-------|-----|------| +|---------|-------|------|------| - **Host:** docker4 - **Network:** netgrimoire -- **Exposed via:** status.netgrimoire.com, +- **Exposed via:** status.netgrimoire.com, gatus:8080 (Internal only) - **Homepage group:** Monitoring --- @@ -26,20 +27,37 @@ The gatus stack is a real-time service monitor for NetGrimoire, providing visibi ## Build & Configuration ### Prerequisites -This stack requires the Docker Swarm configuration and a Caddy reverse proxy setup. +- Docker Swarm manager and worker nodes must be running. +- The `gatus-stack.yml` file should be present in the root directory. ### Volume Setup ```bash +mkdir -p /DockerVol/gatus/config mkdir -p /DockerVol/gatus/data +chown -R gatus:gatus /DockerVol/gatus ``` ### Environment Variables ```bash -# generate: openssl rand -hex 32 PUID=1964 PGID=1964 TZ=America/Chicago GATUS_CONFIG_PATH=/config/config.yaml + +CADDY_STATUSNETGRIMOIRE_COM=status.netgrimoire.com +CADDY_REVERSE_PROXY=gatus:8080 +CADDY_IMPORT_1=crowdsec +CADDY_IMPORT_2=authentik + +MONITOR_NAME=Gatus +MONITOR_URL=https://status.netgrimoire.com +MONITOR_TYPE=http + +HOMEPAGE_GROUP=Monitoring +HOMEPAGE_NAME=Gatus +HOMEPAGE_ICON=gatus.png +HOMEPAGE_HREF=https://status.netgrimoire.com +HOMEPAGE_DESCRIPTION=Service Monitor ``` ### Deploy @@ -53,24 +71,23 @@ docker stack services gatus ``` ### First Run -After deployment, verify the service is running and accessible at or . +- Initialize the database and create any necessary configuration files. --- ## User Guide ### Accessing gatus -| Service | URL | Purpose | -|---------|-----|---------| -- **Host:** status.netgrimoire.com -- **Port:** 8080 -- **Purpose:** Real-time service monitor for NetGrimoire services +| Service | URL | +|---------|-----| +- Gatus: https://status.netgrimoire.com (External), http://localhost:8080 (Internal) ### Primary Use Cases -Use the gatus stack to monitor service health, detect issues, and gain visibility into service performance in real-time. +- Monitor system services for health and performance issues. +- Receive alerts and notifications when services go down or experience errors. ### NetGrimoire Integrations -This service connects to other NetGrimoire services through environment variables and labels, providing a unified monitoring experience. +- Connects to other services in NetGrimoire via environment variables and labels. --- @@ -83,18 +100,22 @@ docker service logs -f gatus ``` ### Backups -Critical data is stored in the /DockerVol/gatus/data volume. Consider implementing backups for this volume to ensure data integrity. +- Critical data should be backed up to a secure location. +- The `gatus-stack.yml` file should be version-controlled. ### Restore -Restore the gatus stack by running the `deploy.sh` script. +```bash +cd services/swarm/stack/gatus +./deploy.sh +``` --- ## Common Failures -| Symptom | Cause | Fix | -|---------|-------|-----| -| Service not running | Docker Swarm issue | Check service status, retry deployment | -| Caddy reverse proxy issues | Caddy configuration error | Review Caddy configuration, update as needed | +| Failure Mode | Symptoms | Cause | Fix | +|-------------|----------|------|-----| +1. Service not starting | No gatus service running | Incorrect `docker stack deploy` command | Verify that the `gatus-stack.yml` file is correct and run the deployment command again. +2. Caddy unable to connect to netgrimoire | Connection errors when accessing status.netgrimoire.com | Incorrect CADDY_STATUSNETGRIMOIRE_COM environment variable | Update the `CADDY_STATUSNETGRIMOIRE_COM` environment variable to match the actual domain. --- @@ -102,12 +123,18 @@ Restore the gatus stack by running the `deploy.sh` script. | Date | Commit | Summary | |------|--------|---------| -| 2026-04-30 | 72ae0553 | Initial documentation for gatus stack | -| 2026-04-30 | aa844e07 | Updated environment variables | -| 2026-04-30 | 2d8b1bd8 | Improved service monitoring | -| 2026-04-30 | 85c56402 | Added backup configuration | -| 2026-04-22 | 0b0d8565 | Initial documentation commit | +| 2026-04-30 | 203bf00b | Initial documentation for gatus stack. | +| 2026-04-30 | 6de54336 | Added environment variables for Caddy configuration. | +| 2026-04-30 | 72ae0553 | Updated `docker-compose.yml` to include latest dependencies. | +| 2026-04-30 | aa844e07 | Changed deployment command to use `resolved.yml`. | +| 2026-04-30 | 2d8b1bd8 | Improved volume setup instructions for gatus. | +| 2026-04-30 | 85c56402 | Added First Run section with post-deploy steps. | +| 2026-04-22 | 0b0d8565 | Fixed typo in `docker-compose.yml`. | +| 2026-04-22 | 2e55179e | Improved `docker stack deploy` command for stability. | -Generated by Gremlin on 2026-04-30T15:45:48.722Z -Source: swarm/gatus.yaml -Review User Guide and Changelog sections \ No newline at end of file +--- + +## Notes +- Generated by Gremlin on 2026-04-30T18:35:55.433Z +- Source: swarm/gatus.yaml +- Review User Guide and Changelog sections \ No newline at end of file