Self-host Uptime Kuma: a status page in 10 minutes (with real RAM numbers)
Description and use
Uptime Kuma runs on minimal resources: under 200 MB RAM and 1.4 MB disk for three monitors. Using Docker Compose and SQLite, you can quickly deploy a self‑contained monitoring solution for sites and services.
Problem
Deploy a lightweight, self-hosted uptime monitoring dashboard that runs on minimal hardware and provides real-time alerts for websites, APIs, and databases.
Outcome
Uptime Kuma runs comfortably on a Raspberry Pi, a 10‑year‑old laptop, or a small VPS, using less than 200 MB of RAM and 1.4 MB of disk for three monitors. It provides a self‑hosted, cost‑free monitoring solution with minimal setup time.
Workflow
- Create a directory and add a compose.yaml with the louislam/uptime-kuma:2 image, named volume kuma-data, port mapping 3001:3001, and restart unless-stopped.
- Run docker compose up -d to pull the image and start the container.
- Open http://localhost:3001 to access the dashboard and choose SQLite as the database during the initial setup.
- Create an admin account and add monitors via the UI, selecting HTTP for pages and TCP for database services.
- Configure alerts and monitor status; observe that HTTP monitors for private resources return 404 and that database endpoints may return 401, so use TCP monitors for such services.
- Measure resource usage: image size 574 MB, RAM idle 143 MB, RAM with 3 monitors 133–147 MB, CPU idle 0.02 %, CPU with 3 monitors ~0.7–0.9 % of one core, disk data volume 1.4 MB, restart time 1.6 s.
- Back up the kuma-data volume weekly using a tar command and store the backup off‑disk.
- Update the container with docker compose pull && docker compose up -d, keeping data intact.
Evidence
Uptime Kuma runs comfortably on a Raspberry Pi, a 10‑year‑old laptop, or the smallest VPS money can buy. RAM is the only number that matters, and it stays well under 200 MB.
Pick SQLite for a homelab. The embedded MariaDB option exists for large installations (hundreds of monitors); for anything under ~50 monitors, SQLite is simpler, uses less RAM, and backs up as a single file.
The monitor is only as available as the machine it runs on.
- Record date: 2026-10-07T11:56:10.201Z