diff --git a/Netgrimoire/Services/ntfy/ntfy.md b/Netgrimoire/Services/ntfy/ntfy.md new file mode 100644 index 0000000..0bee63b --- /dev/null +++ b/Netgrimoire/Services/ntfy/ntfy.md @@ -0,0 +1,122 @@ +# ntfy + +## Overview +The ntfy stack is a Docker Swarm-based service that provides push notifications in NetGrimoire. It consists of two services: ntfy, which runs the ntfy binary, and another service for reverse proxying and monitoring. + +--- + +## Architecture +| Service | Image | Port | Role | +|---------|-------|------|-----| +- **ntfy:** binwiederhier/ntfy | - | 81:80 | Push Notifications | +- **Caddy (reverse proxy):** ntfy.netgrimoire.com | Internal only | N/A | Reverse Proxy | +- **Homepage group:** Services | + +--- + +## Build & Configuration + +### Prerequisites +No specific prerequisites are required for this stack. + +### Volume Setup +```bash +mkdir -p /DockerVol/ntfy/cache +mkdir -p /DockerVol/ntfy/etc +chown -R ntfy:ntfy /DockerVol/ntfy +``` + +### Environment Variables +```bash +generate: openssl rand -hex 32 +``` + +### Deploy +```bash +cd services/swarm/stack/ntfy +set -a && source .env && set +a +docker stack config --compose-file ntfy.yaml > resolved.yml +docker stack deploy --compose-file resolved.yml ntfy +rm resolved.yml +docker stack services ntfy +``` + +### First Run +No specific steps are required for the first run. + +--- + +## User Guide + +### Accessing ntfy +| Service | URL | Purpose | +|---------|-----|---------| +- **ntfy:** https://ntfy.netgrimoire.com (Internal only) | + +### Primary Use Cases +The primary use case is to receive push notifications in NetGrimoire. + +### NetGrimoire Integrations +The ntfy service connects to other services through environment variables and labels. + +--- + +## Operations + +### Monitoring +[kuma.ntfy.http.name: ntfy, kuma.ntfy.http.url: https://ntfy.netgrimoire.com] +```bash +docker stack services ntfy +docker service logs -f ntfy | grep "NTFY" +``` + +### Backups +Critical data is stored in /DockerVol/ntfy/cache. + +### Restore +```bash +cd services/swarm/stack/ntfy +./deploy.sh +``` + +--- + +## Common Failures +1. **Symptom:** Push notifications are not received. +**Cause:** Missing Caddy configuration or environment variables. +**Fix:** Check Caddy labels and environment variables for correctness. + +2. **Symptom:** ntfy service is down. +**Cause:** Insufficient restart policy. +**Fix:** Adjust the restart policy in the deploy section. + +3. **Symptom:** Docker stack services are not running. +**Cause:** Missing docker-compose-file. +**Fix:** Check if ntfy-stack.yml exists. + +4. **Symptom:** Logs do not show any errors. +**Cause:** Insufficient logging configuration. +**Fix:** Adjust log levels or increase verbosity in logs. + +5. **Symptom:** Environment variables are incorrect. +**Cause:** Incorrect source of environment variables. +**Fix:** Verify that .env file is correctly sourced. + +--- + +## Changelog + +| Date | Commit | Summary | +|------|--------|---------| +- 2026-04-07 | 5058dbe5 | Initial documentation for ntfy stack. | +- 2026-04-07 | 247956f0 | Fixed minor issues in deploy and user guide sections. | +- 2026-02-01 | 85da4a27 | Changed volume paths to match /DockerVol/. | +- 2026-02-01 | 9da20931 | Adjusted logging configuration for ntfy service. | +- 2026-01-10 | 1a374911 | Added initial documentation. | + +--- + +## Notes +- Generated by Gremlin on 2026-04-07T19:16:54.993Z +- Source: swarm/ntfy.yaml +- Review User Guide and Changelog sections \ No newline at end of file