构建你的服务器健康仪表盘:Uptime Kuma部署与使用全指南
前言
在数字化服务日益重要的今天,确保网站、API和各类在线服务的稳定运行变得至关重要。想象一下,如果你管理着多个网站或应用程序,手动检查每个服务的状态几乎是不可能完成的任务——这正是服务器监控工具的价值所在。
Uptime Kuma是一款广受欢迎的开源监控解决方案,它允许你自托管一个功能全面、界面友好的监控系统。与许多商业监控服务不同,UFTIME Kuma完全免费且开源,你可以完全控制自己的监控数据和隐私。它不仅能监控HTTP/HTTPS服务,还支持TCP端口、Ping、DNS记录、推送通知等多种监控类型,当服务出现问题时,它会通过电子邮件、Telegram、Discord等90多种通知方式及时提醒你。
本文将带你从零开始部署Uptime Kuma,并配置基础监控功能。无论你是个人开发者、小型团队,还是希望学习服务器监控技术的爱好者,这篇教程都将为你提供清晰的指引。
一、准备工作:
准备一台具备公网IP的云服务器(推荐使用雨云)
优惠注册地址:雨云 - 新一代云服务提供商_
使用优惠码:sn
注: 使用优惠码注册后绑定微信可领取5折优惠券
服务器选购步骤:
- 注册后,在"总览"页面找到"云服务器"入口,进入后点击"购买云服务器"

2.根据需求选择合适的配置,建议选择国内的服务器,访问更快,选好后点击立即购买即可


3.选好后进入控制台,使用SSH客户端远程连接服务器即可,SSH客户端建议选择FinalShell
二、详细部署步骤
2.1 系统更新与环境检查
首先,通过SSH连接到你的云服务器,执行系统更新以确保所有软件包都是最新的:
# 对于基于Debian/Ubuntu的系统
sudo apt update && sudo apt upgrade -y
# 对于基于CentOS/RHEL的系统
sudo yum update -y
接下来,检查系统时间是否正确,不正确的系统时间可能导致监控时间戳错误:
# 查看当前系统时间
date
# 如果需要设置时区(以设置为上海时区为例)
sudo timedatectl set-timezone Asia/Shanghai
2.2 安装Docker
Uptime Kuma的Docker镜像是最简单快捷的部署方式。首先安装Docker环境:
# 使用Docker官方安装脚本(适用于大多数Linux发行版)
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
安装完成后,启动Docker服务并设置开机自启:
# 启动Docker服务
sudo systemctl start docker
# 设置Docker开机自启
sudo systemctl enable docker
# 验证Docker是否安装成功
sudo docker --version
如果看到Docker版本信息(如“Docker version 24.0.6”),说明安装成功。
2.3 部署Uptime Kuma容器
现在,使用一条命令即可部署Uptime Kuma:
# 创建并运行Uptime Kuma容器
docker run -d --restart=always -p 3001:3001 -v uptime-kuma:/app/data --name uptime-kuma louislam/uptime-kuma:2
这条命令做了以下几件事:
-d:让容器在后台运行--restart=always:设置容器总是自动重启(即使服务器重启)-p 3001:3001:将容器内的3001端口映射到服务器的3001端口-v uptime-kuma:/app/data:创建名为“uptime-kuma”的卷,用于持久化存储监控数据--name uptime-kuma:给容器命名为“uptime-kuma”louislam/uptime-kuma:2:使用Uptime Kuma的版本2镜像
如果你希望限制Uptime Kuma只能通过本地访问,可以将端口映射改为-p 127.0.0.1:3001:3001。
2.4 验证容器运行状态
部署完成后,检查容器是否正常运行:
# 查看容器运行状态
docker ps
# 如果容器没有运行,检查容器日志
docker logs uptime-kuma
如果一切正常,你应该能看到类似下面的输出,表明容器正在运行且健康状态正常:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a1b2c3d4e5f6 louislam/uptime-kuma:2 "/usr/bin/dumb-init …" 2 minutes ago Up 2 minutes (health: starting) 0.0.0.0:3001->3001/tcp, :::3001->3001/tcp uptime-kuma
2.5 配置防火墙与安全组
这是许多初学者容易忽略的关键步骤。你需要确保服务器的防火墙和安全组允许访问Uptime Kuma的端口(默认为3001):
# 如果使用firewalld(CentOS/RHEL/openEuler等)
sudo firewall-cmd --zone=public --add-port=3001/tcp --permanent
sudo firewall-cmd --reload
# 如果使用ufw(Ubuntu/Debian)
sudo ufw allow 3001/tcp
sudo ufw reload
重要提示:如果你使用的是云服务器(如阿里云、腾讯云、华为云等),还需要在云服务商的控制台中配置安全组规则,允许入站流量访问3001端口。
2.6 访问Uptime Kuma并完成初始设置
打开浏览器,访问你的服务器IP地址加端口3001:
http://你的服务器IP:3001
第一次访问时,你会看到Uptime Kuma的初始设置页面:
- 创建管理员账户:输入用户名和密码,这将是你的管理账户
- 确认设置:点击“创建”按钮完成账户设置
- 登录系统:使用刚刚创建的账户登录Uptime Kuma
至此,Uptime Kuma已成功部署并可以开始使用!
三、基础使用指南
3.1 添加第一个监控项
登录后,点击左上角的“添加监控项”按钮,开始监控你的第一个服务:
- 选择监控类型:对于网站监控,选择“HTTP(s)”
- 填写基本信息:
- 名称:给你的监控项起个名字(如“我的官网”)
- 网址:输入要监控的URL(如
https://example.com)
- 配置监控参数(可选):
- 心跳间隔:监控检查频率(默认60秒)
- 重试次数:失败后重试次数(默认0)
- 超时时间:请求超时时间(默认30秒)
点击“保存”后,Uptime Kuma就会开始监控你的网站。如果一切正常,你会看到该监控项显示为绿色的“运行中”状态。
3.2 设置通知渠道
监控的意义在于出现问题能及时收到通知。Uptime Kuma支持多种通知方式,这里以最常用的电子邮件通知为例:
-
点击左侧菜单的“设置”>“通知”
-
点击“添加通知”
-
选择“电子邮箱(SMTP)”
-
填写SMTP服务器信息:
- 显示名称:自定义名称(如“邮件提醒”)
- 主机名:SMTP服务器地址
- 163邮箱:
smtp.163.com - QQ邮箱:
smtp.qq.com - Gmail:
smtp.gmail.com
- 163邮箱:
- 端口:通常为465(SSL)或587(TLS)
- 安全性:选择TLS
- 用户名:你的邮箱地址
- 密码:邮箱授权码(注意不是邮箱登录密码)
- 发信人/收信人:填写你的邮箱地址
-
点击“测试”按钮,检查是否能收到测试邮件
-
保存设置
配置完成后,你可以在每个监控项的设置中启用这个通知渠道,这样当服务出现问题时,就会收到邮件提醒。
3.3 创建公开状态页面
Uptime Kuma允许你创建公开的状态页面,展示给用户查看服务状态:
- 点击左侧菜单的“状态页面”
- 点击“添加新的状态页面”
- 填写页面信息:
- 名称:状态页标题(如“服务状态”)
- 路径:页面URL路径(如
/status)
- 在状态页面设置中,可以:
- 添加描述和自定义页脚
- 选择主题(亮色/暗色)
- 选择要展示的监控项
- 设置分组分类
状态页面创建后,你可以通过http://你的服务器IP:3001/status(根据你设置的路径)访问公开状态页。
四、进阶应用与维护
4.1 使用Docker Compose管理(可选)
如果你希望更规范地管理Uptime Kuma,可以使用Docker Compose方式。首先创建一个专用目录:
# 创建目录
mkdir -p /opt/uptime-kuma
cd /opt/uptime-kuma
创建docker-compose.yml文件:
version: '3.3'
services:
uptime-kuma:
image: louislam/uptime-kuma:2
container_name: uptime-kuma
volumes:
- ./data:/app/data
ports:
- 3001:3001
restart: always
启动服务:
# 启动容器
docker compose up -d
# 查看容器状态
docker compose ps
Docker Compose方式的优势在于配置文件可以版本控制,迁移和备份更加方便。
4.2 配置域名与HTTPS访问
直接通过IP和端口访问不够友好,你可以为Uptime Kuma配置域名并使用HTTPS:
-
配置域名解析:在域名服务商处添加A记录,将子域名(如
status.yourdomain.com)指向你的服务器IP -
使用Nginx反向代理(推荐):
server { listen 80; server_name status.yourdomain.com; location / { proxy_pass http://localhost:3001; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } } -
配置SSL证书:使用Let's Encrypt免费证书或你的商业证书
4.3 数据备份与恢复
定期备份Uptime Kuma的数据非常重要:
# 备份数据(假设使用Docker卷)
docker run --rm -v uptime-kuma:/source -v /host/backup:/backup alpine tar czf /backup/uptime-kuma-backup-$(date +%Y%m%d).tar.gz -C /source .
# 恢复数据
docker run --rm -v uptime-kuma:/target -v /host/backup:/backup alpine sh -c "cd /target && tar xzf /backup/uptime-kuma-backup-20250203.tar.gz"
4.4 更新Uptime Kuma
保持Uptime Kuma更新到最新版本可以获得新功能和安全性修复:
# 停止并删除旧容器
docker stop uptime-kuma
docker rm uptime-kuma
# 拉取最新镜像(注意检查官方最新版本号)
docker pull louislam/uptime-kuma:2
# 重新创建容器(使用之前相同的参数)
docker run -d --restart=always -p 3001:3001 -v uptime-kuma:/app/data --name uptime-kuma louislam/uptime-kuma:2
或者,如果你使用Docker Compose,只需在目录中运行:
docker compose pull
docker compose up -d
总结
通过本文的指导,你应该已经成功在Linux云服务器上部署了Uptime Kuma,并配置了基础监控功能。这款工具的强大之处在于它的简洁性和可扩展性——开始时你可以只监控几个关键服务,随着需求增长,逐步添加更多监控项和通知渠道。
Uptime Kuma的真正价值在于它让你对自己的服务状态有了清晰的了解。当问题发生时,你不再需要依赖用户的反馈,而是能第一时间发现并处理,大大提高了服务的可靠性和用户的信任度。
现在,你的服务器健康仪表盘已经准备就绪,开始享受对服务状态了如指掌的安心感吧!










