Creating a Status Dashboard for Your Home Server
Sending ntfy Alerts
Emails are easy to use as alerts, but they're not real-time like a push notification. An interesting real-time alerting method is ntfy, which I described in a previous article [5]. Assuming you've set up a ntfy server as described in that article, you just need to create a user and token for Gatus. To do this, open a shell within ntfy's Docker container:
$ docker exec -ti ntfy /bin/sh
Next, create a user for Gatus and grant it write permissions on the topic gatus:
/ # ntfy user add gatus user gatus added with role user / # ntfy access gatus gatus write-only granted write-only access to topic gatus user gatus (role: user, tier: none) - write-only access to topic gatus
The first command asks you to set up a password for the user. However, Gatus doesn't support authenticating to ntfy with a password, so you need to generate a token for the user:
/ # ntfy token add gatus token tk_7yp9hmwwwoxlag9xaz5clmi5n43qw created for user gatus, never expires
Then you configure ntfy alerting in Gatus' configuration file, as shown in Listing 11. For each endpoint that will use these ntfy alerts, include the following:
alerts:
- type: ntfyListing 11
ntfy Alert Configuration
01 alerting: 02 ntfy: 03 url: https://ntfy.example.com 04 topic: gatus 05 token: tk_7yp9hmwwwoxlag9xaz5clmi5n43qw 06 click: https://gatus.example.com 07 disable-firebase: true
Now add a subscription to the topic in ntfy's mobile app [6] and make sure your user has read access to the topic. You'll be alerted in real time on your phone for any outage now.
Conclusion
Gatus is straightforward to set up, yet powerful, offering many types of health checks and alert types. If you don't like using a YAML file for configuration, there are alternative status dashboards that offer web-based configuration, such as Uptime Kuma [7]. However, because Gatus' full configuration resides in one YAML file, it is easy to automatically generate the configuration with a script based on your systems, making Gatus even more flexible than it already is on its own.
Infos
- Gatus: https://gatus.io
- Gatus on GitHub: https://github.com/TwiN/gatus
- openSUSE MicroOS: https://microos.opensuse.org
- Fedora CoreOS: https://fedoraproject.org/coreos/
- "Sending Push Notifications with ntfy" by Koen Vervloesem, Linux Magazine, issue 297, August 2025, p. 36, https://www.linux-magazine.com/Issues/2025/297/Push-Notifications
- ntfy mobile app: https://ntfy.sh/
- Uptime Kuma: https://uptime.kuma.pet
« Previous 1 2 3
Buy this article as PDF
(incl. VAT)