在云原生时代和DevOps实践中,服务的持续健康与可用性是运维工作的基石。然而,许多传统的监控工具要么配置繁琐复杂,要么界面交互体验不佳,难以平衡功能性与易用性。
酷监控(CoolMonitor)正是为此而生的解决方案。它是一个集多样化监控、智能告警与现代化界面于一体的轻量级系统。它不仅支持对网站、API、数据库、SSL证书等多种资源进行监控,还以其开箱即用的Docker容器化部署方式,为开发者和运维人员提供了“既强大又简单”的监控体验,完美契合轻量级云原生/IaaS部署场景。
核心功能
多元化监控支持
- HTTP/HTTPS 网站监控:持续检测网站或服务的可用性、响应状态与延迟。
- SSL/TLS 证书监控:自动检查HTTPS证书的有效期,在证书过期前发送告警,避免服务中断。
- 关键词监控:验证目标网页内容是否包含或缺失指定的关键文本。
- TCP 端口监控:检测指定主机的网络端口是否开放并可访问。
- 数据库监控:支持
MySQL/MariaDB、Redis等数据库的连接测试与基础健康检查。
- 心跳监控 (Heartbeat):适用于内网或无法从公网直接探测的设备,通过定期上报心跳包来确认其存活状态。
灵活的告警通知
- 支持通过邮件、Webhook等多种渠道发送告警与恢复通知。
- 可为每个监控项独立配置告警触发条件与通知策略,实现精细化的运维/DevOps管理。
现代化的交互界面
- 提供深色与浅色双主题,支持自由切换。
- 采用响应式设计,完美适配从桌面端到移动端的各种设备屏幕。
- 监控数据通过
ECharts图表库进行可视化展示,直观清晰。
简化的数据持久化
- 内置
SQLite数据库并结合Prisma ORM,无需额外部署或维护独立的数据库服务。
- 所有监控数据与配置均持久化存储于挂载的宿主机目录,确保数据安全与升级便利。
技术架构
该项目的技术选型注重全栈开发效率与轻量级部署:
- 前端框架:
Next.js (使用 App Router)
- 后端逻辑:
Next.js API Routes
- 数据层:
SQLite + Prisma ORM
- UI 样式:
Tailwind CSS
- 数据可视化:
ECharts
- 用户认证:
NextAuth.js
- 定时任务:
Croner
这种基于Next.js的全栈前端框架/工程化方案,使得项目结构清晰且易于维护。
快速部署指南(Docker)
推荐使用Docker进行部署,这是最快捷的方式。
x86/amd64 架构服务器
docker run -d --name coolmonitor \
--restart always \
-p 3333:3333 \
-v ~/coolmonitor_data:/app/data \
star7th/coolmonitor:latest
ARM 架构设备(如树莓派、Apple Silicon Mac)
docker run -d --name coolmonitor \
--restart always \
-p 3333:3333 \
-v ~/coolmonitor_data:/app/data \
star7th/coolmonitor:arm-latest
容器启动后,通过浏览器访问 http://你的服务器IP:3333。首次访问将引导你创建管理员账户,系统会自动完成数据库的初始化工作。
版本更新步骤
- 停止并移除当前运行的容器(数据卷
~/coolmonitor_data会保留)。
- 拉取最新的
Docker镜像。
- 使用与初次部署相同的命令重新运行容器。
注意:建议在升级前备份数据目录。新版本首次启动时可能会进行数据库迁移,请耐心等待数秒。
项目目录结构概览
coolmonitor/
├── src/
│ ├── app/ # Next.js 应用路由页面
│ ├── components/ # 可复用React组件
│ ├── lib/ # 核心业务逻辑(监控检查器、系统初始化等)
│ ├── hooks/ # 自定义React Hooks
│ ├── context/ # React Context状态管理
│ └── types/ # TypeScript类型定义
└── prisma/ # 数据库模型与迁移文件
界面预览
以下是酷监控系统主要功能的界面截图,展示了其简洁直观的设计风格:

总结
酷监控(CoolMonitor) 以其极简的部署方式、丰富的监控类型和美观的交互界面,有效填补了轻量级、自托管监控工具的市场空白。无论是个人开发者、初创团队,还是需要监控内部网络服务的场景,它都能提供一个可靠、直观且低维护成本的解决方案。
无需复杂的配置,仅需一行Docker命令,即可获得接近专业的服务监控能力。
项目为完全开源,代码托管于GitHub:https://github.com/star7th/coolmonitor
|