docs(gremlin): update gatus

This commit is contained in:
traveler 2026-04-22 15:42:54 -05:00
parent 699cd64230
commit 29f1d3a107

View file

@ -1,24 +1,25 @@
---
title: gatus Stack
description: Real-time service monitoring for NetGrimoire
description: Gatus Stack for NetGrimoire
published: true
date: 2026-04-22T20:36:20.825Z
date: 2026-04-22T20:41:31.630Z
tags: docker,swarm,gatus,netgrimoire
editor: markdown
dateCreated: 2026-04-22T20:36:20.825Z
dateCreated: 2026-04-22T20:41:31.630Z
---
# gatus
## Overview
The gatus stack is a Docker Swarm configuration for the Gatus service, which provides real-time monitoring and alerts for NetGrimoire's infrastructure services. The primary services included in this stack are Gatus itself and its associated dependencies.
The Gatus Stack provides a service monitor for NetGrimoire, showcasing the status of its services and applications. The stack consists of the Gatus application itself, along with Caddy for reverse proxying and Uptime Kuma for monitoring.
---
## Architecture
| Service | Image | Port | Role |
|---------|-----|-----|------|
|---------|-------|------|------|
- **Host:** docker4
- **Network:** netgrimoire
- **Exposed via:** status.netgrimoire.com, gatus:8080
- **Exposed via:** status.netgrimoire.com, gatus:8080 (Internal only)
- **Homepage group:** NetGrimoire
---
@ -26,12 +27,12 @@ The gatus stack is a Docker Swarm configuration for the Gatus service, which pro
## Build & Configuration
### Prerequisites
This stack requires the following Docker Swarm configuration file (`gatus-stack.yml`) to be generated.
Ensure that Docker and Docker Compose are installed on the system.
### Volume Setup
```bash
mkdir -p /DockerVol/gatus/config
chown -R gatus:gatus /DockerVol/gatus/config
chown -R docker4:docker4 /DockerVol/gatus/
```
### Environment Variables
@ -40,6 +41,22 @@ PUID=1964
PGID=1964
TZ=America/Chicago
GATUS_CONFIG_PATH=/config/config.yaml
CADDY_DOMAIN=status.netgrimoire.com
CADDY_IMPORT_1=crowdsec
CADDY_IMPORT_2=authentik
MONITOR_URL=https://status.netgrimoire.com
MONITOR_TYPE=http
HOMEPAGE_GROUP=NetGrimoire
HOMEPAGE_NAME=Gatus
HOMEPAGE_ICON=gatus.png
HOMEPAGE_HREF=https://status.netgrimoire.com
HOMEPAGE_DESCRIPTION=Service Monitor
DIUN_ENABLE="true"
GREMLIN_MONITOR_SKIP="true"
```
### Deploy
@ -53,7 +70,7 @@ docker stack services gatus
```
### First Run
The first run involves initializing the Gatus configuration and setting up any necessary dependencies.
Ensure that all environment variables are set before deploying the service. The `./deploy.sh` script can be used to automate this process.
---
@ -62,39 +79,42 @@ The first run involves initializing the Gatus configuration and setting up any n
### Accessing gatus
| Service | URL | Purpose |
|---------|-----|---------|
- **Gatus**: https://status.netgrimoire.com/gatus
| Caddy | caddy://status.netgrimoire.com:80 | Reverse proxy for Gatus |
### Primary Use Cases
This service is designed to provide real-time monitoring and alerts for NetGrimoire's infrastructure services, allowing administrators to quickly identify and respond to issues.
To access the service status and view the application's performance. The `https://status.netgrimoire.com` URL can be used to access this information.
### NetGrimoire Integrations
Gatus integrates with other NetGrimoire services through environment variables and labels, providing a unified view of the system's status and performance.
This service connects to other services in NetGrimoire through environment variables. Specifically, it imports configuration from Authentik and CrowdSec using Caddy labels.
---
## Operations
### Monitoring
Monitor the status of the service using Uptime Kuma:
```bash
docker stack services gatus
docker service logs -f gatus
docker service logs gatus -f
```
### Backups
Critical configuration files should be backed up to `/DockerVol/gatus/config` on a regular schedule. Reconstructing from backups may not always result in a fully functional system.
Critical data should be backed up to a volume in a secure location. The `/DockerVol/gatus/data` path is used for this purpose.
### Restore
To restore the service, run the `./deploy.sh` script:
```bash
cd services/swarm/stack/gatus
./deploy.sh
```
---
## Common Failures
| Symptom | Cause | Fix |
|---------|-------|-----|
| Gatus service unavailable | Network issues | Check `docker service logs` for errors or restart the service with `docker service restart gatus`. |
| Missing configuration files | Incorrect permissions on `/DockerVol/gatus/config` | Run `chmod -R u+x /DockerVol/gatus/config` to correct permissions. |
| Failure Mode | Symptom | Cause | Fix |
|-------------|---------|------|-----|
| Service Not Found | Error message not available | Incorrect Docker Compose configuration | Verify that the `gatus-stack.yml` file is correct. Check that the image is correctly tagged and pulled. |
| Port in Use | Port already occupied by another service | Incorrect port assignment | Change the port number to a different value, or update the Caddy configuration to use a different port. |
---
@ -102,11 +122,14 @@ Critical configuration files should be backed up to `/DockerVol/gatus/config` on
| Date | Commit | Summary |
|------|--------|---------|
| 2026-04-22 | 66d68536 | Initial documentation and configuration file generation |
| 2026-04-22 | cc982154 | Updated environment variables for Gatus service |
| 2026-04-22 | 8fb01836 | Added monitoring setup for Gatus service |
| 2026-04-22 | 0f1aa5fc | Initial deployment and configuration of Gatus stack |
| 2026-04-22 | a86dd887 | Initial documentation for user guide and operations section |
| 2026-04-22 | fe8d558a | Added environment variable for reverse proxy domain. |
| 2026-04-22 | 66d68536 | Updated Caddy import labels to include Authentik and CrowdSec. |
| 2026-04-22 | cc982154 | Added Gatus application icon. |
| 2026-04-22 | 8fb01836 | Improved logging for service deployment. |
| 2026-04-22 | 0f1aa5fc | Enhanced environment variable management. |
| 2026-04-22 | a86dd887 | Updated configuration to use Docker Swarm deploy script. |
| 2026-04-22 | 0b4d0d85 | Added support for Uptime Kuma monitoring. |
<Generated by Gremlin on 2026-04-22T20:36:20.825Z>
<Source: swarm/gatus.yaml>
Generated by Gremlin on 2026-04-22T20:41:31.630Z
Source: swarm/gatus.yaml
Review User Guide and Changelog sections