本文首发于只抄博客,欢迎点击原文链接了解更多内容。
前言
Uptime Kuma 是一个类似 Uptime Robot 的站点监控工具,它可以自托管在自己的 Nas 或者 VPS 上,用来监控各类站点、数据库等
- 监控类型:支持监控 HTTP(s) / TCP / HTTP(s) 关键字 / HTTP(s) Json 查询 / Ping / DNS 记录 / Push / Steam 游戏服务器 / Docker 容器 / 数据库(SQL Server、PostgreSQL、MySQL、MongoDB、Redis 等)
- 通知类型:支持 Telegram / Discord / Gotify / Slack / Pushover / Email / Webhook 等 90 多种通知方式
- 检测间隔:支持最低 20 秒的检测间隔
- 图表:支持以图表形式查看历史数据
安装
通过以下 Docker 命令直接启动
sh
docker run -d --restart=always -p 3001:3001 -v uptime-kuma:/app/data --name uptime-kuma louislam/uptime-kuma:1
也可以使用 Docker Compose 启动
yaml
version: '3.8'
services:
uptime-kuma:
image: louislam/uptime-kuma:1
ports:
- "3001:3001"
volumes:
- uptime-kuma:/app/data
restart: always
volumes:
uptime-kuma:
监控
- 通过 http://ip:3001 进入仪表盘后,首先要设置用户名与密码
- 进入到仪表盘后,可以直接点击左上角的"添加监控项"
- 根据自己的需求选择监控类型,这里以监控博客为例,在 URL 中填写上博客的地址后保存
- 稍等片刻就能看到监控的数据以及图表
状态
完成以上步骤,已经可以实现站点的监控,但目前还需要管理员登录仪表盘才能查看监控数据,要让所有人都可以看见,还需要按照以下的步骤添加状态页面
- 点击上方的"状态页面",自定义需要分享的路径
- 在新打开的页面中,找到右下角的服务,将自己需要分享出去的监控项添加进来
- 访问刚才添加的状态页面,就可以看到之前添加进来的服务了
通知
单单监控站点还是不够的,我们还要让站点发生故障时,自动发送通知
要想实现这点也非常简单,只需要在 Uptime Kuma 中添加通知方式,并且在监控项上启用
以飞书通知为例,将 Webhook 地址填入,点击测试后,能收到通知就代表设置成功
点击保存后,每当站点发生故障以及站点恢复时,都会发送通知