Update 2026-06-23 10:40:10
Build and Push Docker Images / Build Backend Image (push) Has been cancelled
Build and Push Docker Images / Build Frontend Image (push) Has been cancelled
Build and Push Docker Images / Notify Build Complete (push) Has been cancelled

This commit is contained in:
yi
2026-06-23 10:40:10 +08:00
parent 864efb7f9d
commit e9bff9beb3
56 changed files with 295 additions and 292 deletions
+32 -28
View File
@@ -1,6 +1,6 @@
# IDC 设备资产管理系统
# 云睿资产管理系统
**维护团队**IDC 设备资产管理开源社区
**维护团队**云睿资产开源社区
**版本**2.1.1 | **更新**2026-06-22
面向数据中心(IDC)运维与资产管理场景,提供机房、机柜、设备全生命周期管理,支持 3D 可视化、工单流转、耗材库存、资产盘点与 RBAC 权限控制。
@@ -42,7 +42,8 @@
```bash
# 克隆项目
cd idc_assest
git clone https://code.xinmi.cloud/yunrui_asset.git
cd yunrui_asset
# 配置 JWT 密钥(生产环境必填)
# PowerShell 生成示例:
@@ -53,7 +54,7 @@ set JWT_SECRET=你的强随机密钥
docker compose -f docker-compose.full.yml up -d --build
# 写入示例数据(可选,含演示账号与机房/设备/工单)
docker exec idc_assest-backend node scripts/seed-example-data.js
docker exec yunrui_asset-backend node scripts/seed-example-data.js
```
| 服务 | 默认地址 | 说明 |
@@ -62,7 +63,7 @@ docker exec idc_assest-backend node scripts/seed-example-data.js
| 后端 API | http://localhost:12001 | 容器内端口 8000 |
| API 文档 | http://localhost:12000/api-docs | Swagger 交互文档 |
| 健康检查 | http://localhost:12001/health | 后端存活探测 |
| MySQL | localhost:12006 | 库名 `idc_management` |
| MySQL | localhost:12006 | 库名 `yunrui_management` |
| 角色 | 用户名 | 密码 | 获取方式 |
|------|--------|------|----------|
@@ -74,15 +75,15 @@ docker exec idc_assest-backend node scripts/seed-example-data.js
**Docker 预构建镜像**`docker-compose.prod.yml`,从仓库拉取,无需本地 build):
```
ghcr.io/gituib/idc-backend:latest
ghcr.io/gituib/idc-frontend:latest
ghcr.io/xinmi/yunrui_asset-backend:latest
ghcr.io/xinmi/yunrui_asset-frontend:latest
```
### 方式二:本地开发
```bash
git clone https://github.com/gituib/idc_assest.git
cd idc_assest
git clone https://code.xinmi.cloud/yunrui_asset.git
cd yunrui_asset
npm run install:all
cp backend/.env.example backend/.env
cd backend && node scripts/init-database.js && cd ..
@@ -98,7 +99,7 @@ npm start
### 项目结构
```
idc_assest/
yunrui_asset/
├── frontend/ # React 前端(Vite
├── backend/ # Express 后端(models / routes / scripts
├── deploy/ # PM2、Nginx 部署配置
@@ -109,6 +110,8 @@ idc_assest/
└── README.md # 本操作手册(权威文档)
```
**源码地址**https://code.xinmi.cloud/yunrui_asset
---
## 操作手册
@@ -117,7 +120,7 @@ idc_assest/
#### 1.1 产品简介
IDC 设备资产管理系统(界面品牌名:**云睿资产**)用于统一管理多机房、多机柜下的服务器、网络、存储等设备,覆盖设备上架、端口接线、故障工单、耗材出入库、资产盘点、数据备份与操作审计等场景,并通过 3D 机柜视图与机房平面图辅助空间规划。
云睿资产管理系统(界面品牌名:**云睿资产**)用于统一管理多机房、多机柜下的服务器、网络、存储等设备,覆盖设备上架、端口接线、故障工单、耗材出入库、资产盘点、数据备份与操作审计等场景,并通过 3D 机柜视图与机房平面图辅助空间规划。
#### 1.2 核心能力
@@ -197,7 +200,7 @@ docker compose -f docker-compose.full.yml up -d --build
docker compose -f docker-compose.full.yml ps
# 查看后端日志
docker logs -f idc_assest-backend
docker logs -f yunrui_asset-backend
# 停止
docker compose -f docker-compose.full.yml down
@@ -210,11 +213,11 @@ docker compose -f docker-compose.full.yml down
| `FRONTEND_PORT` | `12000` | 前端映射端口 |
| `BACKEND_PORT` | `12001` | 后端映射端口 |
| `MYSQL_PORT` | `12006` | MySQL 映射端口 |
| `MYSQL_DATABASE` | `idc_management` | 数据库名 |
| `MYSQL_DATABASE` | `yunrui_management` | 数据库名 |
| `MYSQL_ROOT_PASSWORD` | `xinmi_password` | MySQL root 密码 |
| `JWT_SECRET` | (无默认) | **生产必填** |
数据持久化:MySQL 数据卷 `idc_assest-mysql-data`;上传文件映射 `backend/uploads`;日志映射 `backend/logs`;备份映射 `backend/backups`
数据持久化:MySQL 数据卷 `yunrui_asset-mysql-data`;上传文件映射 `backend/uploads`;日志映射 `backend/logs`;备份映射 `backend/backups`
#### 3.2 Docker 预构建镜像(`docker-compose.prod.yml`
@@ -231,10 +234,10 @@ docker compose -f docker-compose.prod.yml up -d
#### 3.3 Linux 一键安装
```bash
git clone https://gitee.com/zhang96110/idc_assest.git
cd idc_assest
git clone https://code.xinmi.cloud/yunrui_asset.git
cd yunrui_asset
./install.sh
# 或远程一键:curl -fsSL https://gitee.com/zhang96110/idc_assest/raw/main/install.sh | bash
# 或远程一键:curl -fsSL https://code.xinmi.cloud/yunrui_asset/raw/branch/main/install.sh | bash
```
`install.sh` 自动检测发行版、安装 Node.js 20.x,并调用 `install.js` 完成依赖安装、数据库初始化与 Nginx/PM2 配置。
@@ -242,8 +245,8 @@ cd idc_assest
#### 3.4 Windows / 手动安装
```powershell
git clone https://gitee.com/zhang96110/idc_assest.git
cd idc_assest
git clone https://code.xinmi.cloud/yunrui_asset.git
cd yunrui_asset
node install.js
# 或:npm run deploy
```
@@ -312,7 +315,7 @@ node uninstall.js # 交互式卸载
```bash
# Docker 环境
docker exec idc_assest-backend node scripts/seed-example-data.js
docker exec yunrui_asset-backend node scripts/seed-example-data.js
# 本地开发(backend 目录,需配置数据库连接)
cd backend && npm run seed
@@ -569,8 +572,8 @@ curl http://localhost:12000/health
| 环境 | 命令 |
|------|------|
| Docker | `docker logs -f idc_assest-backend` |
| PM2 | `pm2 logs idc-backend` |
| Docker | `docker logs -f yunrui_asset-backend` |
| PM2 | `pm2 logs yunrui_asset-backend` |
| 文件 | `tail -f backend/logs/*.log` |
日志级别通过 `backend/.env``LOG_LEVEL` 控制(`error` / `warn` / `info` / `debug`)。
@@ -582,7 +585,7 @@ curl http://localhost:12000/health
docker compose -f docker-compose.full.yml restart backend frontend
# PM2
pm2 restart idc-backend
pm2 restart yunrui_asset-backend
sudo nginx -s reload
```
@@ -621,7 +624,7 @@ cd backend && npm run seed
| 现象 | 可能原因 | 处理 |
|------|----------|------|
| backend 启动失败 | MySQL 未就绪或 `JWT_SECRET` 未设 | 等待 MySQL;设置 `JWT_SECRET` 后重启 |
| 502 / API 无响应 | 后端容器异常 | `docker logs idc_assest-backend` |
| 502 / API 无响应 | 后端容器异常 | `docker logs yunrui_asset-backend` |
| 中文乱码 | MySQL 字符集 | 确保库为 `utf8mb4` |
#### 10.3 本地开发
@@ -639,7 +642,7 @@ cd backend && npm run seed
| U 位冲突 | 同一机柜 U 位已被占用 | 调整设备起始 U 位或高度 |
| 3D 页面空白 | 浏览器不支持 WebGL | 更换浏览器或更新显卡驱动 |
| 上传失败 | 文件超过大小限制 | 默认最大 30 MB(`MAX_FILE_SIZE_MB` |
| 无示例数据 | 未执行种子脚本 | `docker exec idc_assest-backend node scripts/seed-example-data.js` |
| 无示例数据 | 未执行种子脚本 | `docker exec yunrui_asset-backend node scripts/seed-example-data.js` |
---
@@ -652,10 +655,10 @@ cd backend && npm run seed
| `PORT` | `8000` | 后端监听端口 |
| `NODE_ENV` | `development` | 运行环境 |
| `DB_TYPE` | `sqlite` | `sqlite``mysql` |
| `DB_PATH` | `./idc_management.db` | SQLite 文件路径 |
| `DB_PATH` | `./yunrui_management.db` | SQLite 文件路径 |
| `MYSQL_HOST` | `localhost` | MySQL 主机(Docker 内为 `mysql` |
| `MYSQL_PORT` | `3306` | MySQL 端口 |
| `MYSQL_DATABASE` | `idc_management` | 数据库名 |
| `MYSQL_DATABASE` | `yunrui_management` | 数据库名 |
| `MYSQL_USERNAME` | `root` | 数据库用户 |
| `MYSQL_PASSWORD` | (空) | 数据库密码 |
| `JWT_SECRET` | 开发自动生成 | **生产必填** |
@@ -683,6 +686,7 @@ cd backend && npm run seed
| API 详细文档 | [docs/api/README.md](docs/api/README.md) |
| Docker 部署补充 | [docs/docker-deployment-guide.md](docs/docker-deployment-guide.md) |
| 用户指南(历史) | [docs/USER_GUIDE.md](docs/USER_GUIDE.md) |
| 问题反馈 | https://code.xinmi.cloud/yunrui_asset/issues |
---
@@ -714,5 +718,5 @@ git push origin feature/your-feature
---
**IDC 设备资产管理开源社区**
**云睿资产开源社区**
文档版本:2.1.1 | 2026-06-22