← All open source projects

Uptime Kuma

louislam/uptime-kuma

Uptime Kuma is a self-hosted uptime monitor for HTTP, TCP, ping, DNS, Docker containers, push checks, and status pages.

Forks 7,973
Author louislam
Language JavaScript
License MIT
Synced 2026-06-10

What it is

Uptime Kuma is an uptime monitoring application that can run on your own server. It checks websites, APIs, TCP ports, DNS records, Docker containers, game servers, and push events, then presents status in a web interface.

It solves a simple but important problem: know whether a service is alive, when it went down, and who should be notified. For personal projects, small teams, and internal services, it can be more practical than a heavy observability stack.

What is inside and how it is used

The repository contains a Node.js server, web UI, monitor storage, notifications, status pages, multiple monitor types, and installation paths through Docker or a regular Node process. The docs show Docker Compose, Docker command, and non-Docker options.

A typical flow is to start Uptime Kuma, add a website URL, choose the check interval, configure Telegram, Slack, Discord, email, or another notification channel, and publish a status page for users or the internal team.

Minimal Docker run

This command shows the shortest path: one container, persistent volume, and the web UI on port 3001.

Language: Bash
docker run -d --restart=always \
  -p 3001:3001 \
  -v uptime-kuma:/app/data \
  --name uptime-kuma louislam/uptime-kuma:1

Strengths

The main strength is clarity. Uptime Kuma does not require a full metrics stack when the core question is whether a service responds. The dashboard, notifications, and status pages cover many everyday monitoring needs.

Limits

The limitation is diagnostic depth. Uptime Kuma can tell that a service is down or slow, but it does not replace logs, tracing, profiling, and internal metrics. For serious production systems, it works best alongside broader observability.