feat: 添加Docker部署配置和项目文档
添加前后端Dockerfile和docker-compose配置 创建部署脚本deploy.sh 完善项目文档结构包括前后端文档、API文档和部署文档 更新README提供项目概述和快速开始指南 文档包括详细的技术栈说明、功能模块介绍和部署指南 部署方案支持一键式容器化部署和宝塔面板集成
This commit is contained in:
152
docs/backend.md
Normal file
152
docs/backend.md
Normal file
@@ -0,0 +1,152 @@
|
||||
# 后端功能文档
|
||||
|
||||
## 项目概述
|
||||
|
||||
后端项目是基于Node.js的API接口服务,为微信小程序前端和Web后台管理提供数据交互支持。
|
||||
|
||||
## 技术栈
|
||||
|
||||
- Node.js 22+
|
||||
- Express.js
|
||||
- Pocketbase (数据库)
|
||||
- TypeScript
|
||||
- JWT (认证)
|
||||
- dotenv (环境变量管理)
|
||||
|
||||
## 项目结构
|
||||
|
||||
```
|
||||
back-end/
|
||||
├── src/
|
||||
│ ├── controllers/ # 控制器
|
||||
│ ├── routes/ # 路由
|
||||
│ ├── services/ # 业务逻辑
|
||||
│ ├── models/ # 数据模型
|
||||
│ ├── middlewares/ # 中间件
|
||||
│ ├── utils/ # 工具函数
|
||||
│ └── index.js # 入口文件
|
||||
├── spec/ # OpenAPI规范
|
||||
├── tests/ # 测试文件
|
||||
├── scripts/ # 脚本文件
|
||||
├── .env # 环境变量
|
||||
└── package.json # 项目配置
|
||||
```
|
||||
|
||||
## 核心功能模块
|
||||
|
||||
### 1. 认证模块
|
||||
- 用户登录/注册
|
||||
- JWT token生成与验证
|
||||
- 权限控制
|
||||
|
||||
### 2. 用户管理
|
||||
- 用户信息管理
|
||||
- 密码重置
|
||||
- 用户状态管理
|
||||
|
||||
### 3. 数据管理
|
||||
- 数据CRUD操作
|
||||
- 数据验证
|
||||
- 数据统计
|
||||
|
||||
### 4. AI交互模块
|
||||
- 与AI网关的集成
|
||||
- RAG系统对接
|
||||
- 智能问答
|
||||
|
||||
### 5. 视频服务
|
||||
- 视频流处理
|
||||
- 视频存储
|
||||
- 视频转码
|
||||
|
||||
## 开发指南
|
||||
|
||||
### 环境搭建
|
||||
|
||||
1. 安装依赖
|
||||
```bash
|
||||
npm install
|
||||
```
|
||||
|
||||
2. 启动开发服务器
|
||||
```bash
|
||||
npm run dev
|
||||
```
|
||||
|
||||
3. 运行测试
|
||||
```bash
|
||||
npm run test
|
||||
```
|
||||
|
||||
### 代码规范
|
||||
|
||||
- 使用ESLint进行代码检查
|
||||
- 遵循RESTful API设计规范
|
||||
- 错误处理统一化
|
||||
- 日志记录
|
||||
|
||||
### 路由设计
|
||||
|
||||
路由配置位于 `src/routes/`,支持RESTful API设计。
|
||||
|
||||
### 数据库操作
|
||||
|
||||
使用Pocketbase作为数据库,提供轻量级的数据存储解决方案。
|
||||
|
||||
### 环境变量
|
||||
|
||||
环境变量配置位于 `.env` 文件,包括:
|
||||
- 服务器端口
|
||||
- 数据库连接信息
|
||||
- JWT密钥
|
||||
- 其他配置参数
|
||||
|
||||
## API设计规范
|
||||
|
||||
### 响应格式
|
||||
|
||||
```json
|
||||
{
|
||||
"code": 200,
|
||||
"message": "success",
|
||||
"data": {}
|
||||
}
|
||||
```
|
||||
|
||||
### 错误处理
|
||||
|
||||
```json
|
||||
{
|
||||
"code": 400,
|
||||
"message": "错误信息",
|
||||
"data": null
|
||||
}
|
||||
```
|
||||
|
||||
### 状态码定义
|
||||
|
||||
- 200: 成功
|
||||
- 400: 请求错误
|
||||
- 401: 未授权
|
||||
- 403: 禁止访问
|
||||
- 404: 资源不存在
|
||||
- 500: 服务器内部错误
|
||||
|
||||
## 中间件
|
||||
|
||||
- 认证中间件
|
||||
- 日志中间件
|
||||
- 错误处理中间件
|
||||
- CORS中间件
|
||||
|
||||
## 安全措施
|
||||
|
||||
- JWT认证
|
||||
- 密码加密
|
||||
- 输入验证
|
||||
- 防止SQL注入
|
||||
- 防止XSS攻击
|
||||
|
||||
## 部署说明
|
||||
|
||||
详见 [部署文档](deployment.md)。
|
||||
Reference in New Issue
Block a user