Monitoring
Uptime Kuma
Monitor uptime, latency, and status pages for websites, APIs, and VPS services.
Review notes
Lightweight and beginner-friendly. Back up the SQLite database or Docker volume regularly.
Deployment guide
Run it as a single Docker container, ideal for a small VPS.
- Create a dedicated Docker volume for Uptime Kuma data.
- Run the container and map the internal port, for example `3001:3001`.
- Create the admin user on first launch.
- Add HTTP, TCP, or Ping monitors for important websites, APIs, and services.
- Configure notifications via Telegram, Discord, email, or webhook.
Backup:Back up the `/app/data` volume, especially the SQLite file with monitors and alert settings.
Copy and run on your server
Use each block separately: save the compose file, or copy the bash script to create it and start the container.
docker-compose.ymlyaml
services:
uptime-kuma:
image: louislam/uptime-kuma:1
container_name: uptime-kuma
volumes:
- ./data:/app/data
ports:
- "3001:3001"
restart: unless-stoppedsetup.shbash
#!/usr/bin/env bash
set -euo pipefail
sudo mkdir -p /opt/uptime-kuma
sudo chown "$USER":"$USER" /opt/uptime-kuma
cd /opt/uptime-kuma
cat > docker-compose.yml <<'COMPOSE'
services:
uptime-kuma:
image: louislam/uptime-kuma:1
container_name: uptime-kuma
volumes:
- ./data:/app/data
ports:
- "3001:3001"
restart: unless-stopped
COMPOSE
docker compose up -d
echo "Uptime Kuma is running on http://SERVER_IP:3001"Stack
Node.jsSQLiteDocker