# xwbf **Repository Path**: king_nd/xwbf ## Basic Information - **Project Name**: xwbf - **Description**: No description available - **Primary Language**: NodeJS - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-12-01 - **Last Updated**: 2025-12-04 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

🛡️ 玄武备份监控系统

Xuanwu Backup Monitor

Node.js Docker MySQL License

一个现代化、可视化的项目备份状态监控与管理平台

--- ## 📖 项目简介 **玄武备份 (Xuanwu Backup Monitor)** 是一个专为运维团队设计的备份监控系统。它通过现代化的 Web 界面(Glassmorphism 风格),为您提供直观的项目备份状态概览、详细的组件级监控以及自动化的告警通知功能。 不仅支持 **3D 粒子动态背景** 带来的视觉享受,更内置了 **钉钉群机器人** 集成,确保每一次备份异常都能被及时捕获。 ## ✨ 核心特性 | 功能模块 | 描述 | | :--- | :--- | | **📊 实时看板** | 实时展示项目总数、已检测/未检测状态,配合酷炫的 Three.js 3D 粒子背景。 | | **🛠️ 配置管理** | 强大的后台管理界面,支持项目及组件(IP、路径、版本)的增删改查。 | | **🚨 智能告警** | 集成 **钉钉机器人**,支持按周/日自动推送未检测项目告警,时间可灵活配置。 | | **🐳 容器化部署** | 提供完整的 Docker & Docker Compose 支持,一键启动,内置数据库与自动备份策略。 | | **🔄 版本控制** | 自动记录组件配置的变更历史,确保配置变更可追溯。 | | **📱 响应式设计** | 适配多种屏幕尺寸,随时随地掌控备份状态。 | ## 🚀 快速开始 ### 方式一:Docker 一键部署(推荐) 无需安装 Node.js 和 MySQL 环境,仅需 Docker 即可运行。 ```bash # 1. 拉取代码 git clone https://gitee.com/king_nd/xwbf.git cd xwbf # 2. 启动服务 (包含 App + MySQL + 自动备份服务) docker-compose up -d # 3. 访问系统 # 前台看板: http://localhost:3000 # 后台管理: http://localhost:3000/admin ``` ### 方式二:本地开发运行
点击展开详细步骤 1. **环境要求** - Node.js (v14+) - MySQL (v5.7+) 2. **安装依赖** ```bash npm install ``` 3. **配置环境** 复制 `.env.example` 为 `.env` 并填入数据库信息: ```ini DB_HOST=localhost DB_USER=root DB_PASSWORD=your_password ... ``` 4. **启动服务** ```bash npm start ```
## 📂 目录结构 ``` xwbf/ ├── 📂 public/ # 前端静态资源 (Glassmorphism UI, Three.js) ├── 📂 src/ # 后端源代码 │ ├── server.js # 核心服务入口 (Express) │ ├── db.js # 数据库连接池与迁移逻辑 │ ├── alert_templates.js # 钉钉告警消息模板 │ └── ... ├── 📂 scripts/ # 运维与测试脚本 │ ├── upgrade.sh # 一键升级脚本 │ └── test_dingtalk.js # 钉钉集成测试 ├── 📂 docs/ # 项目文档 └── 📄 docker-compose.yml # 容器编排文件 ``` ## 🔔 告警配置 系统内置了钉钉群机器人通知功能: 1. 登录后台管理界面 (`/admin`)。 2. 点击右上角 **"钉钉配置"**。 3. 输入您的钉钉机器人 Webhook 地址。 4. 设置 **提醒时间**(如:每周一 09:00)。 5. 保存后,系统将按时自动推送未完成检测的项目清单。 ## 🤝 贡献与支持 欢迎提交 Issue 或 Pull Request 来改进这个项目! - **升级指南**: 运行 `bash scripts/upgrade.sh` 即可一键更新到最新版本。 - **技术栈**: Node.js, Express, MySQL, HTML5/CSS3, Docker。 ---
Copyright © 2023-2025 玄武备份团队. All Rights Reserved.