Uptime Kuma
Uptime Kuma 是一个易于使用的自托管监控工具。
🥔 在线演示
尝试一下!
演示服务器(位置:德国法兰克福):https://demo.kuma.pet/start-demo
这是一个临时的在线演示,所有数据将在10分钟后删除。由 Uptime Kuma 赞助商 赞助。
⭐ 功能
- 监控 HTTP(s) / TCP / HTTP(s) 关键词 / HTTP(s) Json 查询 / Ping / DNS 记录 / Push / Steam 游戏服务器 / Docker 容器的正常运行时间
- 精美、响应式、快速的 UI/UX
- 通过 Telegram、Discord、Gotify、Slack、Pushover、电子邮件(SMTP)和 90+ 种通知服务,点击此处查看完整列表 发送通知
- 20秒间隔
- 多语言支持
- 多个状态页面
- 将状态页面映射到特定域名
- Ping 图表
- 证书信息
- 代理支持
- 双因素认证支持
🔧 如何安装
🐳 Docker
docker run -d --restart=always -p 3001:3001 -v uptime-kuma:/app/data --name uptime-kuma louislam/uptime-kuma:1
Uptime Kuma 现在运行在 http://0.0.0.0:3001。
[!警告] 不支持像 NFS(网络文件系统)这样的文件系统。请映射到本地目录或卷。
[!注意] 如果你想将访问限制在本地主机(不向其他用户公开端口或使用反向代理),你可以这样公开端口:
docker run -d --restart=always -p 127.0.0.1:3001:3001 -v uptime-kuma:/app/data --name uptime-kuma louislam/uptime-kuma:1
💪🏻 非 Docker 安装
要求:
- 平台
- ✅ 主要的 Linux 发行版,如 Debian、Ubuntu、CentOS、Fedora 和 ArchLinux 等。
- ✅ Windows 10(x64)、Windows Server 2012 R2(x64)或更高版本
- ❌ Replit / Heroku
- Node.js 18 / 20.4
- npm 9
- Git
- pm2 - 用于在后台运行 Uptime Kuma
git clone https://github.com/louislam/uptime-kuma.git
cd uptime-kuma
npm run setup
# 选项 1. 尝试运行
node server/server.js
# (推荐)选项 2. 使用 PM2 在后台运行
# 如果你没有 PM2,请先安装:
npm install pm2 -g && pm2 install pm2-logrotate
# 启动服务器
pm2 start server/server.js --name uptime-kuma
Uptime Kuma 现在运行在 http://localhost:3001
更多有用的 PM2 命令
# 如果你想查看当前的控制台输出
pm2 monit
# 如果你想添加到启动项
pm2 save && pm2 startup
高级安装
如果你需要更多选项或需要通过反向代理浏览,请阅读:
https://github.com/louislam/uptime-kuma/wiki/%F0%9F%94%A7-How-to-Install
🆙 如何更新
请阅读:
https://github.com/louislam/uptime-kuma/wiki/%F0%9F%86%99-How-to-Update
🆕 下一步是什么?
我会将请求/问题分配到下一个里程碑。
https://github.com/louislam/uptime-kuma/milestones
❤️ 赞助商
非常感谢!(GitHub 赞助商将手动更新。OpenCollective 赞助商将自动更新,列表将由 GitHub 缓存。可能需要一些时间才能更新)
🖼 更多截图
浅色模式:
状态页面:
设置页面:
Telegram 通知示例:
动机
- 我一直在寻找一个类似"Uptime Robot"的自托管监控工具,但很难找到合适的。最接近的是 statping,但不幸的是,它不稳定且不再维护。
- 想要构建一个精美的 UI。
- 学习 Vue 3 和 vite.js。
- 展示 Bootstrap 5 的强大功能。
- 尝试使用 WebSocket 和 SPA 而不是 REST API。
- 将我的第一个 Docker 镜像部署到 Docker Hub。
如果你喜欢这个项目,请考虑给它一个 ⭐。
🗣️ 讨论 / 寻求帮助
⚠️ 对于任何一般或技术问题,请不要给我发电子邮件,因为我无法以这种方式提供支持。如果你在那里问问题,我不会回复。
我建议使用 Google、GitHub Issues 或 Uptime Kuma 的 subreddit 来寻找问题的答案。如果你找不到所需的信息,可以随时在以下地方提问:
我的 Reddit 账号:u/louislamlam 如果你在 subreddit 上提问,可以提到我。
贡献
创建拉取请求
我们不接受所有类型的拉取请求,也不想浪费你的时间。请确保你已阅读并遵循拉取请求规则: CONTRIBUTING.md#can-i-create-a-pull-request-for-uptime-kuma
测试拉取请求
现在有很多拉取请求,但我没有时间测试它们。
如果你想帮忙,可以查看这里: https://github.com/louislam/uptime-kuma/wiki/Test-Pull-Requests
测试 Beta 版本
在这里查看最新的 beta 版本:https://github.com/louislam/uptime-kuma/releases
错误报告 / 功能请求
如果你想报告错误或请求新功能,请随时创建新问题。
翻译
如果你想将 Uptime Kuma 翻译成你的语言,请访问 Weblate Readme。
拼写和语法
欢迎纠正文档或代码中的语法错误。 我的母语不是英语,我的语法也不是很好。