Uptime Kuma + Beszel:2025年最佳服务器监控方案

今天给大家推荐了两个实用的Docker监控工具组合:Uptime Kuma和Beszel。Uptime Kuma专注于服务可用性监控,支持多种检测方式和告警功能,而Beszel则专注于服务器资源统计,能够实时监控容器的CPU、内存、网络等性能。它们结合使用,就像为服务器装上了健康手环和智能体检仪,帮助用户轻松掌握系统状态和资源使用情况。部署过程简单,适合各种设备和操作环境。

项目简介

Uptime Kuma (61.9k stars⭐)

  • 颜值担当:马卡龙配色仪表盘,萌化直男审美的UI
  • 全能监控:支持HTTP/TCP/PING/DNS等11种检测方式
  • 告警狂魔:集成90+通知渠道(连钉钉机器人都能撩)

Beszel (6.2k stars✨)

  • 轻量王者:内存占用<50MB,树莓派都能跑
  • Docker专家:实时监控容器CPU/内存/网络
  • 温度感知:连主板温度都能监控(适合爱折腾的玩家)

准备环节

硬件要求

  • 任意能跑Docker的设备(从古董笔记本到顶配服务器)
  • 硬盘空间:1GB足够(监控数据很"苗条")
  • 内存:512MB起步(建议1GB以上更流畅)

软件需求

  • Docker已安装(没有?往下看急救方案👇)

一键安装Docker(Linux通用版)

curl -fsSL https://get.docker.com | sh
sudo usermod -aG docker $USER #让当前用户免sudo使用docker
newgrp docker #立即生效

Uptime Kuma 部署指南

第一步:启动容器
复制这段"魔法咒语"到终端:

docker run -d \
--name uptime-kuma \
-p 3001:3001 \
-v /docker/uptime-kuma:/app/data \
--restart=unless-stopped \
louislam/uptime-kuma:latest

第二步:访问控制台

浏览器打开:http://你的服务器IP:3001
首次进入会看到这个萌萌的初始化界面:

注意要放行相关端口,是云服务器的前往云服务商控制台放行,是本地服务器的使用下方命令
# 放行3001端口
firewall-cmd --zone=public --add-port=3001/tcp --permanent
# 配置立即生效
sudo firewall-cmd --reload

设置用户名和密码

 

自动跳转进入 Uptime Kuma 仪盘表

第三步:使用Uptime Kuma

1.创建监控项

点击添加监控项,可以选择要监控的类型,本节将以监控站点为例演示

2.监控站点

监控类型选择 HTTP(s),URL填写访问地址

设置通知方式,如果该站点出现问题将以设置的通知方式提醒

最后点击保存,监控项创建成功

3.消息通知

设置通知可以在设置>通知中或在某一监控项中配置,点击设置通知

通知类型选择 电子邮箱(SMTP),配置好SMTP信息,点击测试,收到一封主题为 Test:⚠️ Test 的邮件即为成功,最后点击保存,如果有监控项出现问题,会收到邮件提醒

Beszel 部署实战

第一步:快速启动
复制这条"能量代码":

docker run -d \
--name beszel \
-p 3002:3000 \
-v /var/run/docker.sock:/var/run/docker.sock \
--privileged \
ghcr.io/beszel/beszel:latest

第二步:访问炫酷面板
浏览器访问:http://你的服务器IP:3002
首次打开会被这极客风界面惊艳到:

 

登录成功后,点击右上角的添加客户端

填入相关信息后,记得保存公钥,Agent 中需要使用!

Agent 安装

Beszel Agent 支持通过 Docker / Podman 容器、单一二进制文件或 Home Assistant 插件进行安装,这里以 Docker 安装为例。

Docker 安装

docker run -d \
--name beszel-agent \
--network host \
-v /var/run/docker.sock:/var/run/docker.sock:ro \
-e KEY="公钥" \
-e PORT=45876 \
henrygd/beszel-agent:latest

注意

  • 公钥需要填入前面保存的公钥信息
  • Agent 必须使用主机网络模式才能访问网络接口指标,这将自动暴露端口,可自定义暴露端口
  • 如果 Agent 和 Hub 位于不同的主机上,需要在 Agent 主机的防火墙上开放对应的端口权限,以允许 Hub 访问 Agent

预览截图

 

高阶玩法:双系统联动

场景1:当服务宕机时

  • 在Uptime Kuma设置Webhook通知
  • 触发Beszel自动执行:
docker restart #故障服务

 

场景2:资源超限预警

  • 配置Beszel的Prometheus输出
  • 用Uptime Kuma监控Prometheus指标:
http://beszel:3000/metrics?query=cpu_usage{container="nginx"} > 90

常见问题急救包

Q1:数据不见了?

#检查卷挂载
docker inspect uptime-kuma | grep Mounts

Q2:通知不工作?
试试这个测试命令:

curl -X POST http://localhost:3001/api/status-page

Q3:界面卡顿?
给Beszel加点"营养":

docker update --memory 512M beszel

 

版权声明:
1.本网站名称:柒柒零分享窝
2.本站永久网址:https://www.770a.cn/
3.本网站的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长QQ825703967进行删除处理。
4.本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
5.本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
6.如无特别声明本文即为原创文章仅代表个人观点,版权归《柒柒零分享窝》所有,欢迎转载,转载请保留原文链接。
7.本站作品采用: 《 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 》许可协议授权
THE END
分享
二维码
< <上一篇
下一篇>>