Uptime-kuma 是一款免费开源的网站状态监控工具,支持监控 HTTP(s)/TCP/HTTP(s) 关键字/Ping/DNS 记录/推送/Steam Game Server 等多种服务的运行状态。该项目还支持多种通知渠道,涵盖电子邮件(SMTP)和钉钉机器人等 70 多种通知服务,可实现故障实时报警。本教程详细介绍 Uptime-kuma 的 Docker 部署方法以及后续配置全过程。
功能特点
Uptime-kuma 主要提供以下监控能力:
- HTTP(s) 监控: 监测网站可访问性和响应状态
- TCP 端口监控: 检测服务器端口是否在线
- 关键字监控: 通过关键词匹配判断页面是否正常
- Ping 监控: 检测服务器网络连通性
- DNS 记录监控: 验证域名解析是否正常
- 推送监控: 支持自定义推送机制
- Steam Game Server 监控: 游戏服务器状态监测
通知渠道支持 70 + 种服务,包括邮件、钉钉、企业微信、飞书、Telegram 等主流平台。
部署前准备
在开始部署 Uptime-kuma 之前,请确保:
- 服务器已安装 Docker 环境
- 服务器已安装 Docker Compose(可选)
- 防火墙已放行相关端口
- 已安装 宝塔面板(可选,方便管理)
提示: 如果使用的是宝塔面板,可以直接通过面板的 Docker 管理器可视化安装,操作更加简便。
Docker 部署步骤
第一步:拉取镜像
运行以下命令拉取 Uptime-kuma 官方镜像:
docker pull louislam/uptime-kuma:1
第二步:停止并删除旧容器(如有)
docker stop uptime-kuma
docker rm uptime-kuma
第三步:启动新容器
docker run -d --restart=always -p 3001:3001 -v uptime-kuma:/app/data --name uptime-kuma louislam/uptime-kuma:1
参数说明:
-d:后台运行--restart=always:容器自启动-p 3001:3001:将容器内 3001 端口映射到主机 3001 端口(可自定义前一个端口号)-v uptime-kuma:/app/data:数据持久化,挂载 volumes--name uptime-kuma:容器命名
注意: 数据默认挂载在
/www/wwwroot目录下的uptime-kuma卷中。
防火墙配置
放行监控面板访问端口(本文以 3001 为例):
- 在服务器防火墙中添加入站规则,允许 3001 端口访问
- 如果使用云服务器(阿里云、腾讯云等),还需在云控制台安全组中放行对应端口
完成防火墙配置后,可通过 http://服务器IP:3001 访问 Uptime-kuma 界面。
Nginx 反向代理与 SSL 配置
如需通过域名访问并启用 HTTPS,推荐使用 Nginx 反向代理:
配置反向代理
在 Nginx 配置文件中添加反向代理规则,将域名请求转发到本地 3001 端口:
server {
listen 80;
server_name 你的域名;
location / {
proxy_pass http://127.0.0.1:3001;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
配置 SSL 证书
可在宝塔面板中为域名申请 Let’s Encrypt 免费证书,或使用其他 SSL 证书。配置完成后,通过 https://你的域名 安全访问监控面板。
后台配置与监控项添加
访问 http://服务器IP:3001 或配置好的域名,进入 Uptime-kuma 后台管理界面:
- 首次设置: 创建管理员账户和密码
- 添加监控项: 点击 “Add Monitor”,选择监控类型,填写目标地址和检测间隔
- 配置通知渠道: 在 “Notifications” 中添加通知服务,填写相关参数
- 设置状态页: 在常规设置中将入口页面改为状态页,进入状态页添加监控项
CSS 美化状态页面
Uptime-kuma 支持自定义 CSS 美化状态页显示效果。在状态页设置中找到 CSS 自定义区域,添加以下美化代码:
/* 全局样式 */
body {
font-family:'1666963922',sans-serif;
color:#333;
margin:0;
padding:0;
background-image:url('https://t.mwm.moe/pc');
background-attachment:fixed;
background-size:cover;
background-position:center center;
background-repeat:no-repeat;
}
/* 卡片样式 */
.card {
background-color:#fff;
border-radius:5px;
box-shadow:0 2px 5px rgba(0,0,0,0.1);
margin-bottom:20px;
padding:20px;
}
/* 透明卡片(明亮主题) */
.shadow-box {
background-color:rgba(255,255,255,0.75);
padding:10px;
margin:5px;
border-radius:10px;
}
/* 透明卡片(暗色主题) */
.dark .shadow-box:not(.alert) {
background-color:rgba(0,0,0,0.65);
padding:20px;
margin:10px;
}
/* 渐变色文字动画 */
span[data-v-7d4a7f28], .item-name, .alert-heading {
background-image:linear-gradient(90deg,#07c160,#fb6bea 25%,#3aedff 50%,#fb6bea 75%,#28d079);
-webkit-text-fill-color:transparent;
-webkit-background-clip:text;
background-size:400% 100%;
animation:wzw 10s linear infinite;
}
@keyframes wzw {
0% { background-position:0% 50%; }
50% { background-position:100% 50%; }
100% { background-position:0% 50%; }
}
建议: 在状态页自定义底部文本中添加后台管理入口链接
<a href="https://域名/dashboard">后台管理</a>,方便快速访问后台管理页面,避免遗忘后台地址。
适用场景
- 个人站长: 监控网站是否正常访问,及时发现故障
- 企业运维: 监控服务器和业务系统运行状态
- 开发团队: 监控 API 接口可用性和响应时间
- 游戏服务器: 监控 Steam 游戏服务器在线状态
截图
![图片[1]-Uptime-kuma 网站监控面板:Docker部署+配置教程完全指南-空木白博客](https://wuzuhua.cn/wp-content/uploads/2026/05/20260517193459981-2024072608025266-1024x528.webp)
![图片[2]-Uptime-kuma 网站监控面板:Docker部署+配置教程完全指南-空木白博客](https://wuzuhua.cn/wp-content/uploads/2026/05/20260517193507842-2024072608034954-1024x523.png)
![图片[3]-Uptime-kuma 网站监控面板:Docker部署+配置教程完全指南-空木白博客](https://wuzuhua.cn/wp-content/uploads/2026/05/20260517193518721-2024072607384337-1024x486.webp)














暂无评论内容