Uptime Kuma — Self-Hosted Uptime Monitoring
Monitor HTTP, TCP, DNS, Docker services with notifications to 90+ channels. Beautiful dashboard. 84K+ GitHub stars.
这个资产会安全暂存
这个资产会先安全暂存。复制的指令会要求 Agent 读取暂存文件,并在激活脚本、MCP 配置或全局配置前先确认。
npx -y tokrepo@latest install 88e260be-dfd0-46b6-883f-21141a8c2f23 --target codex先暂存文件;激活前需要读取暂存 README 和安装计划。
What it is
Uptime Kuma is a self-hosted monitoring tool that tracks the availability of your HTTP endpoints, TCP ports, DNS records, Docker containers, and more. It provides a clean dashboard showing uptime percentages, response times, and incident history. When a service goes down, it sends notifications through over 90 channels including Slack, Discord, Telegram, email, PagerDuty, and webhooks.
Uptime Kuma is designed for developers, sysadmins, and small teams who need monitoring without paying for SaaS tools like Pingdom or UptimeRobot. It runs as a single Docker container with no external database dependencies.
How it saves time or tokens
Setting up monitoring with cloud services requires account creation, billing configuration, and per-monitor pricing. Uptime Kuma runs on any server with Docker and costs nothing beyond hosting. The setup takes under a minute with a single docker run command.
The dashboard provides instant visibility into service health without switching between multiple monitoring tools. Status pages can be shared publicly to communicate uptime to users and stakeholders.
How to use
- Start Uptime Kuma with Docker:
docker run -d -p 3001:3001 \
-v uptime-kuma:/app/data \
--name uptime-kuma \
louislam/uptime-kuma:1
- Open
http://localhost:3001and create an admin account - Click 'Add New Monitor' and configure your first HTTP, TCP, or DNS monitor
- Set up notification channels under Settings > Notifications
Example
# Docker Compose setup with persistent storage
cat > docker-compose.yml << 'EOF'
version: '3'
services:
uptime-kuma:
image: louislam/uptime-kuma:1
container_name: uptime-kuma
volumes:
- ./data:/app/data
ports:
- '3001:3001'
restart: unless-stopped
EOF
docker compose up -d
After startup, the web interface is available at port 3001. Monitors check at configurable intervals (default 60 seconds) and record response time, status code, and certificate expiry.
Related on TokRepo
- Monitoring tools -- Compare other monitoring and observability tools
- Self-hosted tools -- Browse applications you can run on your own infrastructure
Common pitfalls
- Uptime Kuma stores data in a SQLite database inside the container. Mount a volume (
-v uptime-kuma:/app/data) to persist data across container restarts. Without the volume, all monitors and history are lost when the container is removed. - Running too many monitors at short intervals (e.g., 100 monitors every 10 seconds) can overload the SQLite database. For large deployments, increase the check interval or use multiple Uptime Kuma instances.
- The default port 3001 may conflict with other services. Change the host port mapping in the docker run command if needed.
常见问题
Uptime Kuma comfortably handles hundreds of monitors on modest hardware. The SQLite database is the bottleneck for very large deployments. For thousands of monitors, consider running multiple instances or increasing check intervals to reduce database write frequency.
Yes. Uptime Kuma includes a built-in status page feature. You can create public-facing pages showing the uptime of selected monitors. Status pages support custom domains, incidents, and maintenance windows.
Uptime Kuma does not have a full REST API. It uses Socket.IO for real-time communication between the frontend and backend. Third-party tools like uptime-kuma-api (Python) provide programmatic access for automation.
Yes, as long as Uptime Kuma is deployed within the same network as the services. It makes outbound requests to the monitored endpoints. For monitoring across networks, you can deploy multiple Uptime Kuma instances or use push monitors where the service reports its own status.
Back up the /app/data directory in the container, which contains the SQLite database and configuration. You can use docker cp, mount a host volume, or use a backup plugin. Restore by copying the data directory into a new container.
引用来源 (3)
- Uptime Kuma GitHub— Self-hosted monitoring with 90+ notification channels
- Uptime Kuma Wiki— Supports HTTP, TCP, DNS, Docker, and more monitor types
- Uptime Kuma Docker Hub— Single Docker container deployment
来源与感谢
Created by Louis Lam. Licensed under MIT.
uptime-kuma — ⭐ 84,700+
讨论
相关资产
Hister — Self-Hosted Search Engine (MCP-ready)
Hister is a privacy-focused self-hosted search engine that full-text indexes visited sites locally, with optional semantic search and MCP agent access.
Dockge — Fancy Self-Hosted Docker Compose Manager
Dockge is a reactive, self-hosted Docker Compose management UI from the creator of Uptime Kuma. It lets you create, edit, start, stop, and monitor docker-compose.yaml stacks through a beautiful real-time web interface.
Checkmate — Open-Source Server Uptime & Infrastructure Monitoring
A self-hosted monitoring tool that tracks server hardware, uptime, response times, and incidents in real-time with beautiful visualizations and smart alerts.
Tianji — All-in-One Website Analytics, Uptime Monitoring and Server Status
A self-hosted platform that combines website analytics, uptime monitoring, and server status tracking in a single dashboard, providing a unified view of your web infrastructure health.