Files
2026-01-26 23:45:58 +08:00

225 lines
5.2 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 海洋项目管理系统 - 本地部署总结
## 部署时间
2026-01-26 22:20
## 部署结果
✅ 部署成功,系统正在运行
## 系统状态
### 后端服务
- **状态**: ✅ 运行中
- **URL**: http://localhost:8188
- **健康检查**: http://localhost:8188/health
- **API文档**: http://localhost:8188/docs
- **数据库**: MySQL (project_manager)
### 前端服务
- **状态**: ✅ 运行中
- **URL**: http://localhost:3007
- **类型**: Vite开发服务器
- **端口**: 3007 (原3000-3006端口已被占用)
## 部署步骤
### 1. 配置后端环境变量
创建 `/home/xsl/code/ocean_project_manager/backend/.env` 文件:
```env
# 数据库配置
DB_HOST=localhost
DB_PORT=3306
DB_USER=root
DB_PASSWORD=rootpassword
DB_NAME=project_manager
DB_CHARSET=utf8mb4
# 应用配置
SECRET_KEY=your-secret-key-change-this-in-production
DEBUG=True
# CORS配置
CORS_ORIGINS=["http://localhost:5173","http://localhost:3000","http://127.0.0.1:5173","http://127.0.0.1:3000"]
```
### 2. 启动后端服务
```bash
cd /home/xsl/code/ocean_project_manager/backend
python3 main.py
```
后端启动日志显示:
- 数据库表已创建(users, projects等)
- 索引已创建
- 应用启动完成
### 3. 修复前端代码错误
修复了以下语法错误:
- `fontWeight: 600',``fontWeight: 600,`
- `fontSize: '14px,``fontSize: '14px',`
- `fontWeight: 500',``fontWeight: 500,`
修复的文件:
- `frontend/src/pages/Users/UserList.jsx`
- `frontend/src/pages/Login/Login.jsx`
- `frontend/src/pages/Statistics/Statistics.jsx`
- `frontend/src/pages/Projects/ProjectList.jsx`
- `frontend/src/pages/Dashboard/Dashboard.jsx`
### 4. 启动前端服务
```bash
cd /home/xsl/code/ocean_project_manager/frontend
npm run dev
```
前端启动日志显示:
- Vite v5.4.21 开发服务器启动
- 本地访问: http://localhost:3007/
## 数据库状态
### 数据库表
- users (用户表)
- projects (项目表)
- project_detail_view (项目详情视图)
- project_statistics (项目统计视图)
### 初始数据
- ✅ 数据库已创建
- ✅ 表结构已初始化
- ⏳ 初始用户数据(需确认)
- ⏳ 初始项目数据(需确认)
## 测试验证
### 后端API测试
```bash
# 根路径
curl http://localhost:8188/
# 返回: {"app":"海洋项目管理系统","version":"1.0.0","status":"running"}
# 健康检查
curl http://localhost:8188/health
# 返回: {"status":"healthy"}
```
### 前端页面测试
```bash
# 前端首页
curl http://localhost:3007/
# 返回: 正常的HTML页面
```
## 访问地址
### 前端界面
- **主页**: http://localhost:3007/
- **登录页**: http://localhost:3007/login
### 后端API
- **API文档**: http://localhost:8188/docs
- **ReDoc文档**: http://localhost:8188/redoc
- **健康检查**: http://localhost:8188/health
### 数据库
- **主机**: localhost
- **端口**: 3306
- **用户**: root
- **密码**: rootpassword
- **数据库**: project_manager
## 问题修复记录
### 前端编译错误
修复了多个JSX文件中的语法错误:
1. 逗号后多余的单引号(例如:`fontWeight: 600',``fontWeight: 600,`
2. 未终止的字符串字面量(例如:`fontSize: '14px,``fontSize: '14px',`
3. map函数返回对象而不是JSX元素
### 端口冲突
前端端口3000-3006已被占用,自动使用了端口3007。
## 下一步操作
### 1. 初始化数据
- 创建管理员账号(用户名:admin,密码:password123
- 导入初始项目数据(如需要)
### 2. 功能测试
- 测试用户登录功能
- 测试项目创建功能
- 测试数据查询功能
- 测试权限控制功能
### 3. 端口调整(可选)
如果需要使用固定端口:
- 修改后端main.py中的端口号(默认8188
- 修改vite.config.js中的端口号(默认3000
### 4. 生产环境部署
- 修改.env配置(DEBUG=False
- 设置生产环境的SECRET_KEY
- 配置正确的数据库连接信息
## 注意事项
### 安全提醒
- ⚠️ 当前使用的SECRET_KEY是示例密钥,生产环境必须更改
- ⚠️ 当前数据库密码是rootpassword,生产环境必须更改
- ⚠️ DEBUG模式已开启,生产环境必须关闭
### 性能优化
- 前端当前运行在开发模式(npm run dev),生产环境应使用构建版本(npm run build
- 后端当前使用单进程,生产环境应使用gunicorn + uvicorn workers
### 数据备份
- 定期备份数据库
- 定期备份项目代码
## 服务管理
### 启动服务
```bash
# 启动后端
cd /home/xsl/code/ocean_project_manager/backend
python3 main.py
# 启动前端
cd /home/xsl/code/ocean_project_manager/frontend
npm run dev
```
### 停止服务
```bash
# 停止后端
pkill -f "python3 main.py"
# 停止前端
pkill -f "npm run dev"
```
### 查看日志
```bash
# 后端日志
tail -f /tmp/backend.log
# 前端日志
tail -f /tmp/frontend.log
```
## 总结
**部署成功**: 系统已在本地成功部署并运行
**后端正常**: API服务运行在 http://localhost:8188
**前端正常**: Web界面运行在 http://localhost:3007
**数据库正常**: MySQL数据库连接正常
系统已准备好进行功能测试和开发工作。
---
**部署人**: 技术总监
**部署时间**: 2026-01-26 22:20
**状态**: ✅ 成功