Jul 01, 2024 · Homelab / Beginner · ~2 MIN READ
Monitor Your Home Lab with Uptime Kuma
Know when core homelab services fail before someone complains — HTTP, TCP, ping, DNS, and Docker monitors with alerting.
Who This Is For
Beginner.
Think of it like a smoke detector for your services. You don’t want to find out something’s on fire because a family member complained the internet’s down, you want to know the second smoke appears.
What You’ll Build
Five monitored services and one tested alert.
Prerequisites
- Docker host with Docker Compose
Deploy Uptime Kuma
$ services:
$ uptime-kuma:
$ image: louislam/uptime-kuma:1
$ ports:
$ - "3001:3001"
$ volumes:
$ - ./data:/app/data
$ restart: unless-stopped
Monitor Types
- HTTP/HTTPS
- TCP port
- Ping
- DNS
- Docker container
- Push monitor (for external scripts to report in)
Add Checks For
- Router
- Reverse proxy
- Key self-hosted services (Nextcloud, Vaultwarden, Immich, etc.)
- NAS
- Internet connectivity itself
Configure Expected Status Codes
Set the exact expected HTTP status per monitor to avoid false positives from services that return non-200 codes normally (e.g. a redirect).
Notification Channels
- Discord
- Telegram
- Generic webhook
Create a Status Page
Build an internal status page for your own reference; only make one public if that’s genuinely appropriate for your use case.
Security & Backup Notes
- Monitoring from inside the same network as the monitored service will miss a real WAN outage, add at least one external check if uptime for remote users matters
Troubleshooting
- Monitoring from inside the network misses WAN failure, add an external monitor (a free tier of a public status service, or a friend’s server) for true outside visibility
- TLS certificate errors, Uptime Kuma flags cert problems by default; check expiry and chain
- Service returns 200 but is actually unusable, switch that monitor to check specific content or an API health endpoint instead of just status code
- Notifications fail due to SMTP config, test the SMTP settings independently before assuming Uptime Kuma is broken
Lab Finish Line
Five monitored services and one tested alert.