你是否曾为服务器宕机而焦头烂额?或者因为性能问题被老板追着问?
别担心,今天我要带你认识一个开源神器——Checkmate!它不仅能实时监控你的服务器,还能用炫酷的可视化界面让你一目了然。
无论你是 IT 大牛还是科技爱好者,这款工具都能让你轻松上手,省心又省力!快来一起看看它的魅力吧!
什么是 Checkmate?
Checkmate 是一个开源、自托管的服务器监控工具,由 BlueWave Labs 开发。它能实时追踪服务器的硬件状态、网站可用性、响应时间和故障事件。简单来说,它就像是你服务器的“私人医生”,随时为你提供健康报告。
更棒的是,Checkmate 完全免费!它的代码托管在 GitHub 上,社区活跃,更新频繁。想为自己的服务器加个“健康助手”?Checkmate 绝对值得一试!
Github 开源仓库地址:https://github.com/bluewave-labs/Checkmate
核心功能:简单又强大
Checkmate 的核心功能可以概括为三点:
-
网站和服务监控:通过 HTTP/HTTPS 或 Ping 检查服务器的可用性和响应时间,确保你的网站或 API 随时在线。
-
硬件监控:通过配套的 Capture 代理,Checkmate 可以监控服务器的 CPU、内存、磁盘和温度等硬件指标。
-
实时告警:当服务器出现问题时,Checkmate 会通过邮件等方式即时通知你,未来还将支持短信和推送通知。
-
美观的可视化:用直观的图表展示服务器性能和故障信息,让你一看就懂。
-
高效性能:Checkmate 经过压力测试,可同时监控 1000+ 个服务,运行稳定,资源占用低。
这些功能让 Checkmate 成为监控服务器的得力助手,尤其是对需要管理多台服务器的 IT 从业者来说,简直是救星!
为什么选择 Checkmate?
想象一下,你的服务器突然宕机,客户投诉,领导责问,而你却一无所知。有了 Checkmate,这种尴尬场景将不再发生!它不仅能帮你实时监控,还能通过美观的界面展示数据,让你随时掌握服务器状态。更重要的是,它开源免费,社区支持强大,功能不断更新。
Checkmate 的设计理念是简单高效。它的前端基于 React 和 Material UI,后端轻量级,运行流畅。你甚至可以用树莓派运行它的 Capture 代理,轻松监控远程服务器。
安装 Checkmate:多种方式任你选
安装 Checkmate 非常简单!以下是两种主要方法:手动安装和使用 Docker Compose,适合大多数 Linux 系统。Windows 和 Mac 用户也可以通过 Docker 运行。
方法 1:手动安装
步骤 1:克隆仓库
首先,你需要从 GitHub 获取 Checkmate 的代码。打开终端,输入以下命令:
1 | git clone https://github.com/bluewave-labs/checkmate.git |
步骤 2:配置环境
在 server
和 client
目录下分别创建 .env
文件,用于存储环境变量。以下是一个简单的配置示例:
server/.env:
1 | MONGODB_URL=mongodb://localhost:27017/checkmate |
client/.env:
1 |
|
步骤 3:启动数据库
Checkmate 需要 MongoDB 和 Redis 作为数据库支持。你可以用 Docker 快速启动它们:
1 |
|
步骤 4:启动服务
在 server
目录下运行:
1 |
|
接着,在 client
目录下运行:
1 |
|
现在,打开浏览器,访问 http://localhost:80
,你就可以看到 Checkmate 的界面啦!
方法 2:使用 Docker Compose(推荐)
如果你更喜欢一键部署,Docker Compose 是你的好帮手!Checkmate 提供了官方的 Combined FE/BE Docker 安装方式,将前端和后端集成在一个镜像中,简化部署流程。以下是具体步骤,基于官方文档:
步骤 1:克隆仓库
与手动安装相同,先克隆代码:
1 |
|
步骤 2:创建 Docker Compose 文件
在项目根目录下,创建一个 docker-compose.yml
文件,内容如下(基于官方文档):
1 |
|
步骤 3:启动服务
确保已安装 Docker 和 Docker Compose,然后运行:
1 |
|
这将自动拉取 Checkmate 的后端镜像和 MongoDB 镜像,启动所有服务。完成后,访问 http://localhost:52345
,即可进入 Checkmate 界面。
配置说明
-
UPTIME_APP_API_BASE_URL:指向服务器的 API 地址,默认
http://localhost:52345/api/v1
。 -
UPTIME_APP_CLIENT_HOST:用于构建指向客户端的链接,默认
http://localhost
。 -
CLIENT_HOST:API 服务器接受请求的来源,默认
http://localhost
。 -
DB_CONNECTION_STRING:MongoDB 连接字符串,指向容器内的 MongoDB 服务。
-
JWT_SECRET:用于认证的密钥,建议替换为自定义的强密钥。
如果你的 Checkmate 实例部署在非本地机器(例如云服务器 IP 为 143.110.231.94),更新环境变量如下:
1 |
|
步骤 4:验证和数据持久化
-
访问
http://localhost:52345
(或你的服务器 IP)确认服务正常运行。 -
数据会保存在
./mongo/data
目录下,升级时保留此目录可确保数据不丢失。 -
建议定期备份
./mongo/data
目录,以防止意外数据丢失。
额外提示
-
安全性:公网部署时,为 MongoDB 配置认证,防止未授权访问。
-
升级:重新拉取最新镜像(
docker-compose pull
)并运行docker-compose up -d
,确保挂载相同的./mongo/data
目录以保留数据。 -
停止服务:使用
docker-compose down
停止并删除所有容器,清理环境。
安装注意事项
-
Combined FE/BE Docker 方式适合快速部署,推荐给大多数用户。
-
Separate FE/BE Docker 方式适合需要独立管理前端和后端的场景,但配置稍复杂。
-
公网部署时,记得为 MongoDB 和 Redis(如果使用)配置认证,增强安全性。
-
如果你使用 Coolify、Elestio 或 K8s 等平台,Checkmate 也支持一键部署,省时省力。
安装 Capture 代理:硬件监控的利器
想监控服务器的硬件状态?那你需要安装 Checkmate 的 Capture 代理。它可以收集 CPU、内存、磁盘和温度等信息,适用于 Linux、Windows、Mac 和树莓派等设备。
安装步骤
- 拉取 Capture 镜像:
1 |
|
- 配置 API 密钥:
将 your-secret-key
替换为自定义密钥,并在 Checkmate 的基础设施监控面板中输入相同的密钥。
- 验证连接:
确保 Capture 运行在端口 59232 上,并与 Checkmate 服务器通信正常。
你也可以从 GitHub Releases 页面下载预编译的 Capture 二进制文件,直接运行。
使用 Checkmate:简单到飞起
创建监控
-
登录 Checkmate(默认用户:uptimedemo@demo.com,密码:Demouser1!)。
-
进入“监控”页面,点击“创建”。
-
输入要监控的 URL(如
https://your-website.com
)。 -
选择监控类型(网站、Ping 或 Docker 容器)。
-
设置检查频率(默认 1 分钟)。
-
配置告警方式(如邮件通知)。
查看数据
-
仪表盘:展示所有监控的概览,包括可用性和响应时间。
-
事件页面:查看故障历史,支持按时间段过滤。
-
日志页面:检查任务队列和服务器日志,便于调试。
高级功能
-
通知渠道:统一管理通知设置,关联到多个监控。
-
状态页面:自定义显示 IP/URL 或管理员登录链接。
-
Docker 监控:实验性功能,需暴露 Docker 守护进程。
社区热议:Checkmate 的魅力
Checkmate 在 GitHub 上收获了近 8000 星,社区活跃,超过 30 名贡献者参与开发。Reddit 用户称它为“简单易用的服务器监控神器”,Hacker News 上有人赞叹它的 UI 设计“美观又直观”。
一位开发者在 GitHub Discussions 中分享:“Checkmate 让我从繁琐的监控工作中解放出来,界面还好看,客户都夸我专业!” 还有用户表示,Capture 代理的轻量级设计让它在树莓派上跑得飞快,性价比无敌。
为什么你会爱上 Checkmate?
-
开源免费:零成本享受企业级监控功能。
-
社区驱动:每周更新,bug 修复快,功能不断增加。
-
易用性:小白也能快速上手,界面友好。
-
跨平台:支持多种设备和系统,灵活部署。
无论你是运维工程师、开发人员,还是对服务器管理感兴趣的爱好者,Checkmate 都能帮你省时省力。它就像一个随时待命的助手,帮你盯着服务器,让你安心做其他事。
如何贡献和获取支持?
Checkmate 欢迎社区贡献!想添加新功能或修复 bug?直接在 GitHub 上提交 Pull Request。如果你是新手,可以看看“good-first-issue”标签,快速上手。
遇到问题?加入 Checkmate 的 Discord 社区(https://discord.com/invite/NAb6H3UTjK),与开发者和其他用户交流。官方文档(https://docs.checkmate.so/)也有详细指南,解决你的疑惑。
未来展望
Checkmate 还在不断进化!开发团队计划推出 DNS 监控、增强通知和更强大的状态页面功能。他们承诺保持工具轻量,避免功能冗余,让用户体验始终简洁高效。
总结:立即尝试 Checkmate!
Checkmate 是一款简单、强大、免费的服务器监控工具。它能帮你实时掌握服务器状态,减少宕机带来的麻烦。无论是手动安装还是 Docker Compose 的 Combined FE/BE 部署,Checkmate 都能让你快速上手。快去 GitHub 克隆代码,试试看吧!
用过 Checkmate 后,你会发现监控服务器原来可以这么简单!快把这个神器分享给你的朋友,一起提升工作效率,摆脱宕机烦恼!有什么使用心得?欢迎在评论区留言,或者加入 Discord 社区和我们聊聊!