Uptime Kuma 是一款轻量级自动化运维监控工具,支持监控 HTTP(s)、TCP、Ping、DNS 记录、推送以及 Steam 游戏服务器的正常运行时间。对于检查特定关键词是否存在于网页中等轻量级监控是足够了。相对于Zabbix,它的设置更为简单,非常适合用于网页监测服务。

2025.10 山西省临汾市洪洞县·广胜寺

安装Docker

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
# 系统使用Rockylinux 10
# 卸载Podman
dnf remove -y podman*
dnf install -y yum-utils device-mapper-persistent-data lvm2 jq

# 官方安装案例
# curl -fsSL https://get.docker.com -o get-docker.sh
# sh ./get-docker.sh --dry-run

# 添加软件源信息
dnf config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo

# 更新并安装Docker-CE
dnf makecache
dnf install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

# 安装并锁定版本
dnf install -y python3-dnf-plugin-versionlock
dnf versionlock add docker-ce

# 配置加速源
mkdir -p /etc/docker
tee /etc/docker/daemon.json <<-'EOF'
{
"group": "docker",
"registry-mirrors": [
"https://docker.1panel.live",
"https://docker.1ms.run",
"https://dytt.online",
"https://docker-0.unsee.tech",
"https://lispy.org",
"https://docker.xiaogenban1993.com",
"https://666860.xyz",
"https://hub.rat.dev",
"https://docker.m.daocloud.io",
"https://demo.52013120.xyz",
"https://proxy.vvvv.ee",
"https://registry.cyou"
],
"exec-opts": ["native.cgroupdriver=systemd"]
}
EOF

# 重新加载并配置开机启动
systemctl daemon-reload
systemctl enable --now docker
docker info

# 拉取测试镜像
docker pull traefik/whoami
docker run -itd --rm -p 80:80 traefik/whoami:latest
curl localhost

部署UPtime-Kuma

特性

  • 监控 HTTP(s) / TCP / HTTP(s) Keyword / HTTP(s) Json Query / Websocket / Ping / DNS Record / Push / Steam Game Server / Docker Containers各种服务的运行时间(uptime);
  • 现代、高效的使用界面;
  • 支持广泛的告警通知手段,包括常见的钉钉、飞书, Discord, Gotify, Slack, Pushover, Email (SMTP), 以及其他90余种程序;
  • 支持多语言
  • 支持多个运行状态界面
  • 支持代理
  • 支持两步验证
  • …………

部署

1
2
3
4
5
6
7
8
9
# 创建目录
mkdir -p ~/docker/uptime

# 拉取镜像
docker pull louislam/uptime-kuma:2

# 运行容器,配置为自动启动,使用8083端口映射容器内部程序运行端口3001,设置时区为上海
# 挂载运行目录,指定docker运行时
docker run -d --restart=always -p 8083:3001 -e TZ=Asia/Shanghai -v ~/docker/uptime-kuma:/app/data -v /var/run/docker.sock:/var/run/docker.sock --name uptime-kuma louislam/uptime-kuma:2

访问

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# 通过配置Nginx代理实现对外访问
vim /etc/nginx/conf.d/uptime.conf

server {
listen 80;
server_name up.sujx.net;
return 301 https://up.sujx.net$request_uri;
}

server {
listen 443 ssl;
gzip on;
server_name up.sujx.net;
include /etc/nginx/ssl/ssl.conf;

location / {
proxy_redirect off;
proxy_pass http://127.0.0.1:8083;

proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Ssl on;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Frame-Options SAMEORIGIN;

client_max_body_size 100m;
client_body_buffer_size 128k;

proxy_buffer_size 4k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
}
}

# 让配置生效
nginx -s reload

配置

  1. 可以使用内置MySQL或者外置MySQL以及嵌入式数据库SQLite

  1. 配置管理员账号

  2. 初始界面

  3. 初始配置

  4. 配置邮件通知

  5. 增加主机,对于尚未上线主机可以设置反转模式,即不可访问为正常

  6. 展示效果

  7. 通过安全性二次验证,即可方便开启两步验证

收工

UPtime-Kuma是一个轻快、方便的监控工具,里面还是有很强的可玩性的。