Generating commit message...

This commit is contained in:
2025-08-30 14:33:49 +08:00
parent 4d469e95f0
commit 7f9bfbb381
99 changed files with 69225 additions and 35 deletions

245
admin-system/DEPLOYMENT.md Normal file
View File

@@ -0,0 +1,245 @@
# 结伴客后台管理系统部署指南
## 部署方式
### 1. 本地开发环境部署
#### 使用 npm 脚本
```bash
# 安装依赖
npm install
# 启动开发服务器
npm run dev
# 构建生产版本
npm run build
# 预览生产版本
npm run preview
```
#### 使用部署脚本
**Linux/Mac:**
```bash
chmod +x deploy.sh
./deploy.sh
```
**Windows PowerShell:**
```powershell
.\deploy.ps1
```
### 2. Docker 容器化部署
#### 开发环境
```bash
# 启动开发环境(包含前端、后端、数据库等所有服务)
docker-compose up frontend-dev backend mysql redis rabbitmq
# 或启动所有服务
docker-compose up
```
#### 生产环境
```bash
# 构建并启动生产环境
docker-compose up -d frontend backend mysql redis rabbitmq
# 查看服务状态
docker-compose ps
# 查看日志
docker-compose logs frontend
```
### 3. 单独服务部署
#### 前端服务
```bash
# 开发模式
docker-compose up frontend-dev
# 生产模式
docker-compose up frontend
```
#### 后端服务
```bash
docker-compose up backend
```
#### 数据库服务
```bash
docker-compose up mysql redis rabbitmq
```
## 环境配置
### 环境变量文件
创建以下环境变量文件:
**.env.development** (开发环境):
```
VITE_APP_TITLE=结伴客后台管理系统(开发)
VITE_API_BASE_URL=http://localhost:3000
VITE_APP_VERSION=dev
```
**.env.production** (生产环境):
```
VITE_APP_TITLE=结伴客后台管理系统
VITE_API_BASE_URL=https://api.jiebanke.com
VITE_APP_VERSION=v1.0.0
```
### Docker 环境变量
`docker-compose.yml` 中配置:
```yaml
environment:
- NODE_ENV=production
- DB_HOST=mysql
- DB_PORT=3306
- DB_NAME=jiebanke
- DB_USER=root
- DB_PASSWORD=password
- REDIS_HOST=redis
- REDIS_PORT=6379
- RABBITMQ_HOST=rabbitmq
- RABBITMQ_PORT=5672
```
## 端口映射
| 服务 | 容器端口 | 主机端口 | 说明 |
|------|----------|----------|------|
| 前端 | 80 | 80 | 生产环境前端 |
| 前端开发 | 5173 | 5173 | 开发环境前端 |
| 后端API | 3000 | 3000 | Node.js后端服务 |
| MySQL | 3306 | 3306 | 数据库服务 |
| Redis | 6379 | 6379 | 缓存服务 |
| RabbitMQ | 5672 | 5672 | 消息队列服务 |
| RabbitMQ管理 | 15672 | 15672 | 管理界面 |
## 健康检查
系统提供健康检查端点:
- 前端: `http://localhost:80/health`
- 后端: `http://localhost:3000/health`
## 监控和日志
### 查看日志
```bash
# 查看所有服务日志
docker-compose logs
# 查看特定服务日志
docker-compose logs frontend
docker-compose logs backend
```
### 服务状态监控
```bash
# 查看服务状态
docker-compose ps
# 查看资源使用情况
docker stats
```
## 故障排除
### 常见问题
1. **端口冲突**
- 检查端口是否被占用
- 修改 `docker-compose.yml` 中的端口映射
2. **依赖安装失败**
- 清除缓存: `npm cache clean --force`
- 删除 node_modules 重新安装
3. **数据库连接失败**
- 检查数据库服务是否启动
- 验证环境变量配置
4. **构建失败**
- 检查 Node.js 版本 (要求 >= 16)
- 检查系统依赖
### 调试模式
启动服务时添加调试标志:
```bash
# 前端开发调试
npm run dev -- --debug
# Docker 调试模式
docker-compose up --build --force-recreate
```
## 备份和恢复
### 数据库备份
```bash
# 备份MySQL数据
docker exec -i mysql mysqldump -uroot -ppassword jiebanke > backup.sql
# 恢复MySQL数据
docker exec -i mysql mysql -uroot -ppassword jiebanke < backup.sql
```
### 卷备份
```bash
# 备份数据库卷
docker run --rm -v mysql_data:/source -v $(pwd):/backup alpine tar czf /backup/mysql_backup.tar.gz -C /source .
```
## 安全建议
1. **修改默认密码**
- MySQL root 密码
- RabbitMQ 默认用户密码
- Redis 密码(如果需要)
2. **启用HTTPS**
- 配置SSL证书
- 使用反向代理
3. **防火墙配置**
- 只开放必要的端口
- 限制外部访问
4. **定期更新**
- 更新Docker镜像
- 更新依赖包
## 性能优化
1. **启用缓存**
- 配置Redis缓存
- 使用CDN加速静态资源
2. **负载均衡**
- 使用nginx负载均衡
- 配置多实例部署
3. **数据库优化**
- 添加索引
- 查询优化
- 连接池配置
## 支持
如遇部署问题,请检查:
1. Docker 和 Docker Compose 版本
2. 系统资源(内存、磁盘空间)
3. 网络连接
4. 查看详细错误日志