DEV Community

Alex Spinov
Alex Spinov

Posted on

Uptime Kuma Has a Free Self-Hosted Monitoring Tool

Uptime Kuma is a free, open-source monitoring tool with a beautiful dashboard. Think of it as a self-hosted alternative to Pingdom, StatusCake, and UptimeRobot.

What Is Uptime Kuma?

Uptime Kuma monitors your websites, APIs, and services and alerts you when they go down. It has a beautiful, modern UI and runs on your own server.

Key features:

  • Monitor HTTP(s), TCP, DNS, Docker, Steam, MQTT, and more
  • Beautiful reactive dashboard
  • 90+ notification types (Slack, Telegram, Discord, Email, etc.)
  • Status pages (public status page for your users)
  • Multi-language support
  • Proxy support
  • Certificate expiry monitoring
  • 2FA authentication

Quick Start

Docker (recommended)

docker run -d \
  --name uptime-kuma \
  -p 3001:3001 \
  -v uptime-kuma:/app/data \
  louislam/uptime-kuma:1
Enter fullscreen mode Exit fullscreen mode

Open http://your-server:3001. Create admin account. Start monitoring.

Non-Docker

git clone https://github.com/louislam/uptime-kuma.git
cd uptime-kuma
npm run setup
node server/server.js
Enter fullscreen mode Exit fullscreen mode

Add a Monitor

  1. Click "Add New Monitor"
  2. Enter URL: https://your-website.com
  3. Set check interval (default: 60 seconds)
  4. Add notification channels
  5. Done!

Supported monitor types:

  • HTTP(s): Check if website returns 200 OK
  • TCP Port: Check if port is open
  • DNS: Verify DNS records
  • Docker Container: Check container status
  • Ping: ICMP ping check
  • gRPC: gRPC health check
  • Game Server: Steam/Minecraft server status

Notifications

Uptime Kuma supports 90+ notification services:

  • Chat: Slack, Discord, Telegram, Microsoft Teams, Mattermost
  • Email: SMTP, SendGrid, Mailgun
  • Mobile: Pushover, Pushbullet, Gotify
  • Incident: PagerDuty, OpsGenie, Squadcast
  • Webhook: Custom HTTP webhooks
  • And many more

Set up in seconds — just paste your webhook URL or bot token.

Public Status Pages

Create beautiful status pages for your users:

  • Custom domain support
  • Group monitors by category
  • Show uptime history
  • Custom CSS styling
  • Incident management

Share https://status.your-domain.com with your users.

Why Not Just Use UptimeRobot?

Feature UptimeRobot Free StatusCake Free Uptime Kuma
Monitors 50 10 Unlimited
Check interval 5 min 5 min 20 sec+
Status pages 1 1 Unlimited
Notifications 1 type 2 types 90+ types
Data retention 2 months 7 days Unlimited
Custom domain Paid Paid Free
Self-hosted No No Yes
Cost $0-$7/mo $0-$25/mo $0 forever

Certificate Monitoring

Uptime Kuma automatically checks SSL certificate expiry:

  • Alerts X days before certificate expires
  • Shows certificate details in dashboard
  • Monitors cert chain validity

Never let a certificate expire again.

Docker Container Monitoring

# docker-compose.yml
services:
  uptime-kuma:
    image: louislam/uptime-kuma:1
    volumes:
      - ./data:/app/data
      - /var/run/docker.sock:/var/run/docker.sock:ro
    ports:
      - 3001:3001
Enter fullscreen mode Exit fullscreen mode

Mount the Docker socket and monitor container health directly.

Who Uses Uptime Kuma?

With 63K+ GitHub stars (one of the most popular self-hosted tools):

  • DevOps teams monitoring infrastructure
  • Indie hackers monitoring side projects
  • Companies needing internal monitoring
  • MSPs monitoring client sites

Get Started

  1. Run one Docker command
  2. Create admin account
  3. Add your first monitor
  4. Set up notifications

Full monitoring solution in under 2 minutes. No signup, no limits, no cost.


Monitor your web scraping jobs too! Check out my scraping tools on Apify — reliable data extraction from any website. Custom scrapers: spinov001@gmail.com

Top comments (0)