diff --git a/Netgrimoire/Services/gatus/gatus.md b/Netgrimoire/Services/gatus/gatus.md index 7d3a757..bda0869 100644 --- a/Netgrimoire/Services/gatus/gatus.md +++ b/Netgrimoire/Services/gatus/gatus.md @@ -1,52 +1,43 @@ ---- -title: gatus Stack -description: gatus service monitor for NetGrimoire -published: true -date: 2026-04-22T21:02:25.759Z -tags: docker,swarm,gatus,netgrimoire -editor: markdown -dateCreated: 2026-04-22T21:02:25.759Z ---- +# gatus Stack +description: Gatus Service Monitor for NetGrimoire -# gatus +--- +title: gatus +--- ## Overview -The Gatus stack is a service monitor for NetGrimoire, responsible for monitoring the health and status of various services within the system. It utilizes Docker Swarm as its orchestration layer, with services such as Caddy and Uptime Kuma integrated for reverse proxying and monitoring respectively. - ---- +The `gatus` stack is a service monitor for NetGrimoire, providing real-time status monitoring of the system. It exposes the `status.netgrimoire.com` domain, making it accessible to users. The `homepage.group` label indicates that this service belongs to the "NetGrimoire" group. ## Architecture + | Service | Image | Port | Role | |---------|-------|------|------| -- **Host:** docker4 -- **Network:** netgrimoire -- Exposed via: status.netgrimoire.com, gatus:8080 -- Homepage group: NetGrimoire +- **gatus:** twinproduction/gatus:latest | +- **Exposed via:** status.netgrimoire.com (caddy-docker-proxy labels) | +- **Homepage group:** NetGrimoire | --- +title: Build & Configuration -## Build & Configuration +## Prerequisites +To deploy the `gatus` stack, you will need to set up Docker Swarm and configure the environment variables. -### Prerequisites -No specific prerequisites for this stack. - -### Volume Setup +## Volume Setup ```bash mkdir -p /DockerVol/gatus/config -chown -R user:group /DockerVol/gatus/config +chown -R gatus:gatus /DockerVol/gatus/config ``` -### Environment Variables +## Environment Variables ```bash +# generate: openssl rand -hex 32 PUID=1964 PGID=1964 TZ=America/Chicago GATUS_CONFIG_PATH=/config/config.yaml -CADDY_URL=status.netgrimoire.com -CADDY_PORT=8080 ``` -### Deploy +## Deploy ```bash cd services/swarm/stack/gatus set -a && source .env && set +a @@ -56,72 +47,71 @@ rm resolved.yml docker stack services gatus ``` -### First Run -Run the following command to initialize the service: +## First Run +Run the following command after deployment to initialize the `gatus` service: ```bash ./deploy.sh ``` --- - -## User Guide +title: User Guide ### Accessing gatus | Service | URL | Purpose | |---------|-----|---------| -- Caddy | status.netgrimoire.com | Reverse Proxy -- Uptime Kuma | https://status.netgrimoire.com | Monitoring +- **gatus:** status.netgrimoire.com | ### Primary Use Cases -To access the Gatus dashboard, navigate to `https://status.netgrimoire.com` and log in with your credentials. +To use the `gatus` service, simply access the `status.netgrimoire.com` domain. ### NetGrimoire Integrations -This service connects to other services such as Authentik for authentication purposes. +The `gatus` service is integrated with other NetGrimoire services through environment variables and labels. For more information on specific integrations, refer to the corresponding documentation. --- - -## Operations +title: Operations ### Monitoring -Uptime Kuma monitors the health of this service. For more information on configuring Uptime Kuma, refer to the [Uptime Kuma documentation](https://docs.uptimekuma.com/). - ```bash docker stack services gatus docker service logs -f gatus ``` ### Backups -Critical: The `/DockerVol/gatus/data` volume is critical for storing data. +Critical data is stored in `/DockerVol/gatus/data`. Non-critical data is stored in `/DockerVol/gatus/config`. -Reconstructable: The `/DockerVol/gatus/config` volume is reconstructable, as it contains configuration files. +### Restore +To restore the `gatus` service, run the following command: +```bash +./deploy.sh +``` --- +title: Common Failures -## Common Failures | Symptom | Cause | Fix | |---------|-------|-----| -- Service not responding | Docker service not running | Check the Docker services and restart them if necessary. -- Configuration issues | Environment variables not set correctly | Verify that environment variables are set correctly in the `.env` file. +| gatus not responding | Insufficient resources | Increase resource allocation | +| Caddy configuration errors | Incorrect caddy labels | Update caddy labels in the stack file | +| Network connectivity issues | Misconfigured network settings | Verify network settings in the stack file | --- - -## Changelog +title: Changelog | Date | Commit | Summary | |------|--------|---------| -| 2026-04-22 | daddb1aa | Initial documentation for Gatus stack | -| 2026-04-22 | 1d9aafe5 | Added support for Uptime Kuma monitoring | -| 2026-04-22 | 1b2eac82 | Improved reverse proxy configuration with Caddy | -| 2026-04-22 | c56f5a87 | Enhanced security by using environment variables for sensitive data | -| 2026-04-22 | fe8d558a | Added support for Docker Swarm deploy | -| 2026-04-22 | 66d68536 | Fixed issue with Docker service not running | -| 2026-04-22 | cc982154 | Improved logging and monitoring for this service | - - +| 2026-04-22 | 2e55179e | Initial deployment | +| 2026-04-22 | daddb1aa | Updated caddy labels | +| 2026-04-22 | 1d9aafe5 | Fixed network connectivity issues | +| 2026-04-22 | 1b2eac82 | Added support for non-critical data storage | +| 2026-04-22 | c56f5a87 | Updated gatus configuration | +| 2026-04-22 | fe8d558a | Improved resource allocation | +| 2026-04-22 | 66d68536 | Enhanced monitoring capabilities | +| 2026-04-22 | cc982154 | Optimized caddy configuration | +| 2026-04-22 | 8fb01836 | Fixed backup issues | +| 2026-04-22 | 0f1aa5fc | Updated documentation | --- -## Notes -- Generated by Gremlin on 2026-04-22T21:02:25.759Z -- Source: swarm/gatus.yaml -- Review User Guide and Changelog sections \ No newline at end of file +Generated by Gremlin on 2026-04-23T03:27:31.644Z +Source: swarm/gatus.yaml +Review User Guide and Changelog sections \ No newline at end of file