OSS Tanbou

Uptime Kuma — Self-host HTTP/TCP/DNS monitoring, status pages, and 90+ notification integrations

OSS health 100
About these scores

Discovery score is an unbounded weighted, log-compressed index of stars, watchers, forks, and contributors. Growth momentum is its change over the observed period; OSS health is a 0–100 score from available repository recency, Community Health, and release data.

Stars
91,428
Primary language
JavaScript
License
MIT
Repository last updated
Sep 16, 2026

Overview

Uptime Kuma is a self-hosted monitoring tool for HTTP(S), TCP, keyword/JSON queries, WebSocket, Ping, DNS, Push, Docker containers, and other checks, with notifications and multiple status pages in one UI. The latest stable release as of September 16, 2026 is 2.5.4, which also includes a new SFTP monitor and security fixes.

Features and best fit

Based on official documentation; not hands-on tested · Content checked:

Combine multi-protocol health checks, notifications, and status pages in one dashboard

It monitors HTTP(S), TCP, keywords, JSON queries, WebSocket, Ping, DNS records, Push, Steam servers, and Docker containers, with intervals down to 20 seconds. More than 90 notification services and multiple status pages are supported.

Sources: [2]

Start with a short Docker Compose flow and pick up new monitor types and security fixes in 2.5.4

The README provides a compose.yaml download followed by docker compose up -d. Release 2.5.4 adds SFTP monitoring with password/private-key authentication and new notification providers, plus a jsonata CVE update and a DoS weakness fix.

Sources: [2][3]

For homelabs and smaller services that want monitoring data and status pages under their own control

It suits homelabs, indie services, and small teams that want checks, notifications, and status pages on their own server without adopting a larger observability stack.

Treat port exposure, persistent data, and upgrades as operator responsibilities

The README Docker examples expose port 3001 on all interfaces unless you bind it differently. Prefer localhost binding or a reverse proxy/TLS setup for internet-facing use. NFS is explicitly unsupported for data storage. Because releases such as 2.5.4 carry security fixes, self-hosting also requires an update cadence.

Sources: [2][3]

Official sources

  1. [1]louislam/uptime-kuma — GitHub repository metadata(2026-09-16)
  2. [2]Uptime Kuma — README(2026-09-16)
  3. [3]Uptime Kuma 2.5.4 release(2026-09-16)
Supplemental curator note

It makes small-scale monitoring easy, but internet-facing deployments still need deliberate authentication, reverse proxying, backups, and update operations instead of simply exposing port 3001.

Try it in 3 steps

  1. 1

    Create a working directory

    Prepare a directory on a host with Docker Compose.

    mkdir uptime-kuma && cd uptime-kuma
  2. 2

    Download the official Compose file

    Fetch the compose.yaml linked by the README.

    curl -o compose.yaml https://raw.githubusercontent.com/louislam/uptime-kuma/master/compose.yaml
  3. 3

    Start the monitoring server

    Complete setup at http://localhost:3001. Before public exposure, review binding, reverse proxy/TLS, and backups.

    docker compose up -d
Check the official README

Growth

Growth trends · Last 30 days

91,428 Stars

Trend data is still being collected.

Development activity

Last 90 days · weekly

Commits (last 30 days)
85
Open PRs
85

Development activity is still being collected.

Built with

Categories and tags

GitHub data

GitHub dataView detailed GitHub data

GitHub Topics

  • uptime
  • monitoring
  • docker
  • selfhosted
  • self-hosted
  • single-page-app
  • webapp
  • responsive
  • websocket
  • socket-io
  • uptime-monitoring
  • monitor
Stars
91,428
Forks
8,415
Watchers
320
Open issues
721
Primary language
JavaScript
License
MIT
Repository last updated
Sep 16, 2026
Write a related article

Share a guide or use case for this OSS in Markdown. Articles are published after administrator approval.

Report incorrect information

Tell us if any listing information is incorrect or outdated.