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 title: gatus Stack
description: Real-time service monitoring for NetGrimoire description: Gatus Stack for NetGrimoire
published: true published: true
date: 2026-04-22T20:36:20.825Z date: 2026-04-22T20:41:31.630Z
tags: docker,swarm,gatus,netgrimoire tags: docker,swarm,gatus,netgrimoire
editor: markdown editor: markdown
dateCreated: 2026-04-22T20:36:20.825Z dateCreated: 2026-04-22T20:41:31.630Z
--- ---
# gatus # gatus
## Overview ## 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 ## Architecture
| Service | Image | Port | Role | | Service | Image | Port | Role |
|---------|-----|-----|------| |---------|-------|------|------|
- **Host:** docker4 - **Host:** docker4
- **Network:** netgrimoire - **Network:** netgrimoire
- **Exposed via:** status.netgrimoire.com, gatus:8080 - **Exposed via:** status.netgrimoire.com, gatus:8080 (Internal only)
- **Homepage group:** NetGrimoire - **Homepage group:** NetGrimoire
--- ---
@ -26,12 +27,12 @@ The gatus stack is a Docker Swarm configuration for the Gatus service, which pro
## Build & Configuration ## Build & Configuration
### Prerequisites ### 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 ### Volume Setup
```bash ```bash
mkdir -p /DockerVol/gatus/config mkdir -p /DockerVol/gatus/config
chown -R gatus:gatus /DockerVol/gatus/config chown -R docker4:docker4 /DockerVol/gatus/
``` ```
### Environment Variables ### Environment Variables
@ -40,6 +41,22 @@ PUID=1964
PGID=1964 PGID=1964
TZ=America/Chicago TZ=America/Chicago
GATUS_CONFIG_PATH=/config/config.yaml 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 ### Deploy
@ -53,7 +70,7 @@ docker stack services gatus
``` ```
### First Run ### 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 ### Accessing gatus
| Service | URL | Purpose | | Service | URL | Purpose |
|---------|-----|---------| |---------|-----|---------|
- **Gatus**: https://status.netgrimoire.com/gatus | Caddy | caddy://status.netgrimoire.com:80 | Reverse proxy for Gatus |
### Primary Use Cases ### 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 ### 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 ## Operations
### Monitoring ### Monitoring
Monitor the status of the service using Uptime Kuma:
```bash ```bash
docker stack services gatus docker stack services gatus
docker service logs -f gatus docker service logs gatus -f
``` ```
### Backups ### 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 ### Restore
To restore the service, run the `./deploy.sh` script:
```bash ```bash
cd services/swarm/stack/gatus
./deploy.sh ./deploy.sh
``` ```
--- ---
## Common Failures ## Common Failures
| Symptom | Cause | Fix | | Failure Mode | Symptom | Cause | Fix |
|---------|-------|-----| |-------------|---------|------|-----|
| Gatus service unavailable | Network issues | Check `docker service logs` for errors or restart the service with `docker service restart gatus`. | | 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. |
| Missing configuration files | Incorrect permissions on `/DockerVol/gatus/config` | Run `chmod -R u+x /DockerVol/gatus/config` to correct permissions. | | 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 | | Date | Commit | Summary |
|------|--------|---------| |------|--------|---------|
| 2026-04-22 | 66d68536 | Initial documentation and configuration file generation | | 2026-04-22 | fe8d558a | Added environment variable for reverse proxy domain. |
| 2026-04-22 | cc982154 | Updated environment variables for Gatus service | | 2026-04-22 | 66d68536 | Updated Caddy import labels to include Authentik and CrowdSec. |
| 2026-04-22 | 8fb01836 | Added monitoring setup for Gatus service | | 2026-04-22 | cc982154 | Added Gatus application icon. |
| 2026-04-22 | 0f1aa5fc | Initial deployment and configuration of Gatus stack | | 2026-04-22 | 8fb01836 | Improved logging for service deployment. |
| 2026-04-22 | a86dd887 | Initial documentation for user guide and operations section | | 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> Generated by Gremlin on 2026-04-22T20:41:31.630Z
<Source: swarm/gatus.yaml> Source: swarm/gatus.yaml
Review User Guide and Changelog sections