# 后端服务 (Backend) 币安自动交易系统后端API服务 ## 功能 - 配置管理API(从数据库读取/更新配置) - 交易记录API - 统计分析API - 仪表板数据API ## 安装 ```bash cd backend pip install -r requirements.txt ``` ## 数据库配置 ### 方式1:使用.env文件(推荐) 在 `backend/` 目录或项目根目录创建 `.env` 文件: ```bash # 复制示例文件 cp .env.example .env # 编辑.env文件 DB_HOST=localhost DB_PORT=3306 DB_USER=root DB_PASSWORD=your_password DB_NAME=auto_trade_sys CORS_ORIGINS=http://localhost:3000,http://localhost:5173 ``` ### 方式2:使用环境变量 ```bash export DB_HOST=localhost export DB_PORT=3306 export DB_USER=root export DB_PASSWORD=your_password export DB_NAME=auto_trade_sys export CORS_ORIGINS=http://localhost:3000,http://localhost:5173 ``` **注意**:系统会优先从 `.env` 文件读取配置,然后才是环境变量。 ## 初始化数据库 ```bash mysql -u root -p < database/init.sql ``` ## 运行 ### 开发模式(自动重载) 代码修改后会自动重启,无需手动重启: ```bash # 方式1:使用开发启动脚本 ./start_dev.sh # 方式2:直接运行 uvicorn api.main:app --reload --host 0.0.0.0 --port 8001 ``` ### 生产模式 代码修改后需要手动重启: ```bash # 方式1:使用生产启动脚本 ./start.sh # 方式2:使用重启脚本 ./restart.sh # 方式3:手动重启 # 1. 查找进程: ps aux | grep uvicorn # 2. 停止服务: kill # 3. 启动服务: ./start.sh ``` **注意**: - 开发模式使用 `--reload` 参数,代码修改后自动重启 - 生产模式不使用 `--reload`,需要手动重启才能生效 - 重启脚本 `restart.sh` 会自动查找并重启服务 ## API文档 启动后访问: - Swagger UI: http://localhost:8000/docs - ReDoc: http://localhost:8000/redoc ## 目录结构 ``` backend/ ├── api/ # FastAPI应用 │ ├── main.py # 应用入口 │ ├── routes/ # 路由 │ └── models/ # API模型 ├── database/ # 数据库 │ ├── connection.py │ ├── models.py │ └── init.sql ├── config_manager.py # 配置管理器 └── requirements.txt ```