在你的个人项目半夜偷偷宕机,而你还在睡大觉之前,你需要的正是这样一个“电子保安”——Uptime Kuma。
它不仅是个监控工具,还是个颜值颇高、极易上手的自托管神器。今天我们就来聊聊这个躺在 GitHub 上、能让无数开发者睡个安稳觉的开源项目。
半夜三点,你的服务挂了,然后呢?
想象一下这个场景:你花费一个周末搭建的个人博客、一个小型 API 服务,或者一个和朋友联机的游戏服务器,在凌晨三点因为内存溢出悄然崩溃。而你,正在梦里拯救世界,对此一无所知。直到第二天朋友发来消息:“你的网站怎么打不开了?”。
市面上的监控服务要么收费,要么数据要经过第三方服务器。自己写一个?太麻烦了。这就是 Uptime Kuma 登场的时刻——它像一个忠实的看门大爷,全天候盯着你指定的所有服务,一旦出事,马上通过各种方式“砸”醒你。
Uptime Kuma 是什么?一个“花里胡哨”的看门大爷
简单说,Uptime Kuma 是一个花哨的自托管网站监控工具。作者的初衷很直白:他想要一个自托管的“Uptime Robot”替代品,但找不到合适的,于是自己动手撸了一个。主要目标是造一个好看、现代的 UI,顺便学学新技术,结果这个副产品意外地受欢迎。
用一句话记住它:自己的服务自己盯,自己的数据自己管。
这家伙能监控啥?从网页到游戏服务器通吃
Uptime Kuma 的监控能力可以说覆盖了你数字生活的方方面面:
- 不只是 HTTP(s):常规的网站监控自然不在话下,它还能通过 TCP、Ping、DNS 记录、Websocket 来检查服务是否健康。
- 更懂你的内容:你可以设置关键字检测,确保网页内容正确,而不是只返回一个 200 OK 的空壳。甚至可以用 Json 查询来验证 API 返回的具体数据。
- 硬核玩家必备:支持监控 Steam 游戏服务器和 Docker 容器的运行状态,这对有自己游戏服务器的玩家来说堪称神器。
- 主动或被动:常规方式是它主动去“敲门”,但如果你的服务在内网,它还支持 Push 模式,让内网服务定期向它“报平安”。
它的通知渠道也多得离谱,从 Telegram、Discord、Slack、邮件到 Gotify 等 90 多种方式,保证能在出事时用你最喜欢的方式通知到你。
上手试试?三分钟跑起来给你看
是不是觉得“自托管”听起来有点复杂?别担心,有 Docker 的话,只需三分钟,你就能拥有自己的监控中心。
最推荐的安装方式是Docker Compose。在你的服务器或本地电脑上打开终端,只需执行下面几行命令:
# 1. 创建一个目录并进入
mkdir uptime-kuma && cd uptime-kuma
# 2. 下载官方提供的 compose 配置文件
curl -o compose.yaml https://raw.githubusercontent.com/louislam/uptime-kuma/master/compose.yaml
# 3. 启动!
docker compose up -d
搞定!现在,在浏览器里打开http://你的IP:3001,你就能看到一个精美的登录界面。创建一个管理员账户,就能立刻开始添加网站或服务进行监控了。几秒钟就能看到第一个“ping”结果和漂亮的响应时间图表。部署过程顺滑得像抹了黄油。
最后,给这个“电子保安”点个赞吧
Uptime Kuma 从诞生起就带着一股“我要学新技术,顺便解决自己问题”的极客范儿,如今它已成长为一个功能强大、社区活跃的成熟项目。如果你也受够了半夜被故障叫醒,或者只是单纯喜欢这种把数据掌握在自己手里的感觉,不妨去它的GitHub仓库 https://github.com/louislam/uptime-kuma 看看。
无论你是给个 Star 表示支持,还是提个 Issue 反馈问题,甚至是参与代码贡献或翻译,都是对开源世界的一份善意。毕竟,用爱发电的项目,最需要的就是你的反馈和参与。快去试试吧,让 Uptime Kuma 替你在深夜里睁大眼睛。