托管监控工具Uptime Kuma

本文最后更新于:2024年2月3日 早上

刚发现的一个用来监控服务接口状态的工具,试用了下挺不错的。本文是记录部署和使用的过程,当然完全可以通过阅读Uptime Kuma仓库的说明代替本文。

前言

最开始我使用uptime在GitHub上对自己的博客进行了简单的监控,使用它的好处是不需要服务器,依靠github的actions定时去检查,缺点嘛,就是添加修改检查对象很麻烦,而且量大了更麻烦。偶然发现了Uptime Kuma,虽然需要部署,但是在交互上美丽了太多,之后就用它来监控手里的所以服务了。

部署

这里使用docker安装,其他方式请去它的仓库查看。我现在是能docker就docker减少一亿点麻烦。

创建:

1
2
3
# 创建个文件夹链接容器存放数据
root@fff:~/docker# mkdir uptime-kuma
docker run -d --restart=always -p 1234:3001 -v /root/docker/uptime-kuma:/app/data --name uptime-kuma louislam/uptime-kuma:1

更新:

1
2
3
4
docker pull louislam/uptime-kuma:1
docker stop uptime-kuma
docker rm uptime-kuma
docker run -d --restart=always -p 1234:3001 -v /root/docker/uptime-kuma:/app/data --name uptime-kuma louislam/uptime-kuma:1

这里补充下,觉得慢就直接在服务器上挂代理V2RAYA,我是一直没修改过镜像地址。

通过docker ps可以看看有没有运行

1
2
CONTAINER ID   IMAGE                           COMMAND                  CREATED              STATUS                        PORTS                                   NAMES
5f523505274c louislam/uptime-kuma:1 "/usr/bin/dumb-init …" About a minute ago Up About a minute (healthy) 0.0.0.0:9997->3001/tcp, :::1234->3001/tcp uptime-kuma

使用

此时可以通过域名+IP访问,我这里先直接配置个域名指向它,申请个SSL证书。按照下列示例配置nginx

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
server{
listen 80;
server_name sub.domain.com;
rewrite ^(.*)$ https://$host$1 permanent;
}
server {
listen 443 ssl http2;
# Remove '#' in the next line to enable IPv6
# listen [::]:443 ssl http2;
server_name sub.domain.com;
ssl_certificate /path/to/ssl/cert/crt;
ssl_certificate_key /path/to/ssl/key/key;
# *See "With SSL (Certbot)" below for details on automating ssl certificates

location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
proxy_pass http://localhost:3001/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}

进入后会先让创建管理员账号:

初始界面张这样:

通过左上角按钮添加一个对kala.love的监控。该页面有很多参数,如果仅仅想监控自己的页面有没有炸,就填入名称和在URL项填入域名就好,我还添加了个标签个人博客。下图为配置界面:

创建后会根据设置里面的检查频率进行请求

它支持非常多的通知方式,在设置界面里面可以配置,我这里只配置了邮件通知,其他的可以自己去看看。在配置好后需要回到监控项的设置里面去启用通知,如下图:

右上角的仪表盘可以看到整体监控的情况

状态页面则是可以创建一个用于展示的独立页面,该页面不需要密码即可查看

最后看看资源占用情况

1
2
3
docker stats --no-stream 5f523505274c
CONTAINER ID NAME CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O PIDS
5f523505274c uptime-kuma 0.37% 122MiB / 1.941GiB 6.14% 111kB / 1.85MB 58.5MB / 557kB 19

总结

我觉得这工具非常棒,监控方式多,通知方式也多,操作简单界面好看,完美满足了我当前的需求。


托管监控工具Uptime Kuma
https://blog.kala.love/posts/3899fa8b/
作者
Lissettecarlr
发布于
2023年11月22日
许可协议