1. 网站运行时间监控
告别网站宕机烦恼!Uptime Kuma:你的24小时运行监控神器
致读者: 点击上方 “雪之梦技术驿站” → 点击右上角“ ... ”→ 点选“设为星标★ ” 加上星标,就不会找不到我啦!
如果你有一群需要特别关注的网站或者服务,那么时刻掌握服务可用性显得至关重要!
想象一下,针对某些网站是否发生故障,什么时间重新恢复?简单的逻辑,复杂的开发.
曾经的我,是这么实现的,不仅要处理普通的 http 请求返回 json 格式,还要 selenium 爬取监控首页,判断是否可用后再写个消息推送服务,不可不谓不复杂!
这密密麻麻是代码如今再也不需要了,只要简单部署Uptime Kuma
服务即可轻松实现!
内心 OS: 为啥不让我早日发现这神奇项目,推荐给大家.
1.1. 效果
部署成功后,你将收到一个默认首页,效果杠杠滴,高端大气上档次.
默认网站监控首页: https://uptime.snowdreams1006.cn/
首次部署成功后会提示注册用户,成为管理员就能添加各类的监控网站,支持 http 请求,还额外附带了https 证书过期提醒服务!
添加监控网站设置: https://uptime.snowdreams1006.cn/manage-status-page
不仅支持普通的http
网站,还支持docker
,数据库等多种特殊类型监控.
当网站发生故障时,内置了多种通知的配置,让你第一时间收到最新动态.
例如某个关注网站不可用或者重新恢复正常时,你将会收到这样的消息推送.
所以,让我们一起看看如何安装使用这个开源项目吧!
1.2. 项目
直接推荐 github 地址,不仅支持常规方式部署,还支持 docker 部署!
安装
- docker 方式
友情提示: 目前国内 docker 环境异常,请自行搜索相关解决,懒得话也可以私聊我.
docker run -d --restart=always -p 3001:3001 -v uptime-kuma:/app/data --name uptime-kuma louislam/uptime-kuma:1
- 源码安装
pm2 : 用于后台运行
Uptime Kuma
git clone https://github.com/louislam/uptime-kuma.git
cd uptime-kuma
npm run setup
# Option 1. Try it
node server/server.js
# (Recommended) Option 2. Run in the background using PM2
# Install PM2 if you don't have it:
npm install pm2 -g && pm2 install pm2-logrotate
# Start Server
pm2 start server/server.js --name uptime-kuma
支持
windows/mac/linux
等常见系统,nodejs
版本推荐v20.17.0
即可.
1.3. 使用
本地启动后默认会在3001
端口开启http
服务,正式部署上线需要确保3001
端口可以访问或者使用nginx
等反向代理方式公开服务.
站点主 URL
设置-->常规-->自动获取站点主 URL: https://uptime.snowdreams1006.cn
注意: 这里的站点 url 就是游客访问时的默认首页!
TLS 证书过期通知
设置-->通知-->TLS 证书过期通知
可信的代理类字段 HTTP 头
设置-->反向代理-->HTTP 头-->是
nginx 的 https 请求配置示例,更多请参考官方文档
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";
}
}
Docker 宿主
设置-->Docker 宿主-->Docker 守护进程
如果想要监控其他 docker 化容器,需要配置 uptime-kuma 宿主信息.
https://github.com/louislam/uptime-kuma/wiki/How-to-Monitor-Docker-Containers
备份
请改为直接备份 docker 卷或者数据文件夹(./data/)。
1.4. 总结
本文主要介绍了louislam/uptime-kuma
项目,简洁漂亮的首页监控着众多网页,还支持国内外各类消息服务.
1.5. 往期精彩文章
1.6. 欢迎扫码关注
欢迎扫码关注,私信回复『加群』一起交流技术
作者: 雪之梦技术驿站
来源: 雪之梦技术驿站
本文原创发布于「雪之梦技术驿站」,转载请注明出处,谢谢合作!