Uptime Kuma
Docker Installation (Recommended)
# Pull latest image
docker pull louislam/uptime-kuma:latest
# Run container
docker run -d \
--restart=always \
-p 3001:3001 \
-v uptime-kuma:/app/data \
--name uptime-kuma \
louislam/uptime-kuma:latest
# Verify running
docker ps | grep uptime-kumaDocker Compose Installation
# Create docker-compose.yml
cat > docker-compose.yml << 'EOF'
version: '3.8'
services:
uptime-kuma:
image: louislam/uptime-kuma:latest
container_name: uptime-kuma
restart: always
ports:
- "3001:3001"
volumes:
- uptime-kuma:/app/data
volumes:
uptime-kuma:
EOF
# Run compose
docker-compose up -d
# View logs
docker-compose logs -f uptime-kumaInstallation from Source
Ubuntu/Debian
# Install Node.js
curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash -
sudo apt install nodejs -y
# Clone repository
git clone https://github.com/louislam/uptime-kuma.git
cd uptime-kuma
# Install dependencies
npm install --production
# Start Uptime Kuma
node server/server.js
# Or use PM2 for background running
sudo npm install -g pm2
pm2 start server/server.js --name uptime-kuma
pm2 startup
pm2 saveWeb Interface
# Access Uptime Kuma
http://server-ip:3001
# First time setup
1. Set admin username and password
2. Add monitors
3. Configure notificationsContainer Management
# View container logs
docker logs -f uptime-kuma
# Stop container
docker stop uptime-kuma
# Start container
docker start uptime-kuma
# Restart container
docker restart uptime-kuma
# Remove container
docker rm uptime-kuma
# View container details
docker inspect uptime-kumaBackup & Restore
# Backup data
docker cp uptime-kuma:/app/data ./uptime-kuma-backup
# Restore data
docker cp ./uptime-kuma-backup/. uptime-kuma:/app/data
# Or backup volume
docker run --rm -v uptime-kuma:/data -v $(pwd):/backup \
ubuntu tar czf /backup/uptime-kuma-backup.tar.gz /data
# Restore volume
docker run --rm -v uptime-kuma:/data -v $(pwd):/backup \
ubuntu tar xzf /backup/uptime-kuma-backup.tar.gz -C /Configuration
Basic Settings
# Access admin panel
http://server-ip:3001
# Settings available
- Timezone
- Theme (light/dark)
- Language
- Status pageAdd Monitor
# Via web interface
1. Navigate to Monitors
2. Click "Add New Monitor"
3. Select monitor type (HTTP, TCP, Ping, etc.)
4. Configure:
- Name
- URL/Hostname
- Check interval
- Timeout
- Retries
5. SaveNotifications
# Configure notification channels
1. Navigate to Settings > Notifications
2. Add new notification:
- Email
- Slack
- Discord
- Telegram
- etc.
3. Configure message template
4. Test notificationUninstall
Docker
# Stop and remove container
docker stop uptime-kuma
docker rm uptime-kuma
# Remove volume (optional, keeps data)
docker volume rm uptime-kuma
# Remove volume (delete all data)
docker volume rm uptime-kumaDocker Compose
# Stop and remove
docker-compose down
# Remove volumes
docker-compose down -vSource Installation
# Stop PM2 process
pm2 stop uptime-kuma
pm2 delete uptime-kuma
# Remove directory
rm -rf ~/uptime-kumaTroubleshooting
# Check if container is running
docker ps | grep uptime-kuma
# View container logs
docker logs -f uptime-kuma
# Check port availability
sudo netstat -tlnp | grep 3001
# Restart container
docker restart uptime-kuma
# Check container health
docker inspect uptime-kuma | grep Health