UptimeKuma:一个类似UptimeRobot的监控工具

uptimekuma可以监控http/https/tcp/ping,报警支持telegram/discord/smtp等。

官方的文档写的很详细了,咱这里就只当是水文章了,纯推荐一下。

项目地址:https://github.com/louislam/uptime-kuma

我在甲骨文的oracle8上部署的,用的docker,先装一下需要用到的工具。

安装docker:

sudo dnf -y update
sudo dnf -y install dnf-plugins-core
sudo dnf config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
sudo dnf -y install docker-ce docker-ce-cli containerd.io
sudo systemctl enable --now docker
sudo usermod -aG docker opc

安装certbot和nginx:

sudo dnf -y install oracle-epel-release-el8
sudo dnf config-manager --set-enabled ol8_developer_EPEL
sudo dnf -y install python3-certbot-nginx nginx
sudo systemctl enable --now nginx

selinux和防火墙配置:

sudo setsebool -P httpd_can_network_connect 1
sudo firewall-cmd --set-default-zone=trusted
sudo firewall-cmd --reload

创建一个卷:

docker volume create uptime-kuma

启动即可:

docker run -d --restart=always -p 127.0.0.1:3001:3001 -v uptime-kuma:/app/data --name uptime-kuma louislam/uptime-kuma:1

配置nginx反向代理,新建配置文件:

sudo nano /etc/nginx/conf.d/kuma.conf

写入如下配置:

server {
listen 80;
server_name kuma.example.com;
location / {
proxy_pass         http://127.0.0.1:3001;
proxy_http_version 1.1;
proxy_set_header   Upgrade $http_upgrade;
proxy_set_header   Connection "upgrade";
proxy_set_header   Host $host;
proxy_set_header   X-Real-IP $remote_addr;
proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
}
}

申请ssl证书:

sudo certbot --nginx

如果有更新,你可以使用下面的方法来更新:

docker pull louislam/uptime-kuma:1
docker stop uptime-kuma
docker rm uptime-kuma
docker run -d --restart=always -p 127.0.0.1:3001:3001 -v uptime-kuma:/app/data --name uptime-kuma louislam/uptime-kuma:1

配置报警通知,我这里就用smtp了:

如果你需要快速自建一个smtp服务,可以参考一下这篇文章:

Maddy:多合一邮件服务器(all-in-one mail server)

添加监控项目,记得在右侧启用通知:

测试一下,邮箱内可以收到报警邮件就OK了:

全部为采集文章,文中的 联系方式 均不是 本人 的!

发表评论