I have no VPS but a home server and Uptime Kuma can’t help me if it’s down. So I just set up healthchecks.io + Pushover via a cron job that runs on the server and I can confirm that it works! Tested yesterday after a citywide blackout 😵💫
Selfhosted
A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.
Rules:
-
Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.
-
No spam posting.
-
Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.
-
Don't duplicate the full text of your blog or github here. Just post the link for folks to click.
-
Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).
-
No trolling.
-
No low-effort posts. This is subjective and will largely be determined by the community member reports.
Resources:
- selfh.st Newsletter and index of selfhosted software and apps
- awesome-selfhosted software
- awesome-sysadmin resources
- Self-Hosted Podcast from Jupiter Broadcasting
Any issues on the community? Report it using the report flag.
Questions? DM the mods!
Set up Uptime Kuma on the VPS to monitor services there. Uptime Kuma can send you a notification if any of them become unresponsive.
Then use Healthchecks.io to monitor the VPS itself and Uptime Kuma.
You can set up to 20 monitors on the free tier with healthchecks.io.
Its a push monitor, so if the VPS/Uptime Kuma doesnt reach out to say its alive within the designated time interval you'll get a notification, like a sort of dead man switch.
Theres a load of notification options for both healthchecks and Uptime Kuma including email, discord, ntfy, etc, etc.
This way you have no need for a seperate self hosted server, and you get healthchecks on yo healthchecks.
Uptime Kuma has a number of notification options.
I just had to set one up because the Oracle free tier is hot garbage and needs resetting every day or two.
Same here. Run it on my VPS to test my outside reachability and inside to check against my VPS.
I use uptime Kuma with signal-cli for notifications - it's been rock solid. I also have another uptime kuma instance that uses email as notification option to monitor my primary uptime kuma and the signal-cli.
+1 for Uptime Kuma, I use it with ntfy. If OP doesn't want a self hosted solution, there's UptimeRobot - essentially SAAS Uptime Kuma, but with a free tier.
This is what I use, though I run it on a local server that checks services that it runs (update breaks something, etc) and then also reaches out to the vps (and more) for status checks. Have it check services that are accessible by an access control rule, so the server is protected but you have updates on exactly what is having issues.
Ntfy can send/receive notifications to/from the phone. You can selfhost it or use a public instance. For the healthcheck app, consider Uptime Kuma as it has ntfy integration. But a simple cron script that monitors + cURLing ntfy when it fails could also be used.
Ntfy is a good lightweight option indeed.
This has proven to be the one 👍
If you don't have another server, this is likely your best option. It's a simple app, that pings the website on a given interval and gives an app notification if it can't reach it.
Uptime Kuma and a notification provider.
I use telegram because it has an easy way to set up bots.
just going to put this here https://github.com/awesome-selfhosted/awesome-selfhosted?tab=readme-ov-file#monitoring--status-pages
I recommend the free tier of healthchecks.io for this. I have all of my in-depth monitoring selfhosted, but use this as a general "is it at least online" check that tells me on multiple platforms if it isnt.
Cron job and termux-notify
There's a lot of options. There's countless paid services that offer exactly that.
If you wanna build something yourself for free, you could probably set up a site accessible via HTTP on your server and create a script on your phone that pings it every 30 seconds or so. Afaik, termux has a termux-notification function that lets you send a notification.
Codewise, it would look somewhere like this I think:
#!/usr/bin/env bash
# Config
NOTIFY_TITLE="Server Alert"
NOTIFY_MESSAGE="Server returned a non‑200 status."
HOST="funnysite.com"
PORT=8080
PATH="/healtcheck"
URL="http://${HOST}:${PORT}${PATH}"
# Config
HTTP_CODE=$(curl -s -o /dev/null -w "%{http_code}" "$URL")
if [[ "$HTTP_CODE" != "200" ]]; then
termux-notification -t "$NOTIFY_TITLE" -c "$NOTIFY_MESSAGE $HOST:$PORT"
fi
exit 0
Afaik, termux doesn't ship the cron daemon, but you can install cronie or use an external task scheduler. There, just set to run the script every 60 seconds or so. Whatever you need.
I haven't tested anything of this, but in my head, it sounds like it should work fine.
I run nagios and use pushover, over kill for what I monitor but it's what I know
Uptime Kuma and a VOIP subscription that lets you send webhooks.
Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I've seen in this thread:
| Fewer Letters | More Letters |
|---|---|
| ESXi | VMWare virtual machine hypervisor |
| HTTP | Hypertext Transfer Protocol, the Web |
| VPS | Virtual Private Server (opposed to shared hosting) |
3 acronyms in this thread; the most compressed thread commented on today has 4 acronyms.
[Thread #191 for this comm, first seen 24th Mar 2026, 21:20] [FAQ] [Full list] [Contact] [Source code]