Files
ai_wht_wechat/backend/CONFIG_GUIDE.md

113 lines
2.3 KiB
Markdown
Raw Permalink Normal View History

2026-01-06 19:36:42 +08:00
# Python服务配置说明
## 配置文件结构
Python服务现在使用与Go服务相同的配置文件结构
```
backend/
├── config.dev.yaml # 开发环境配置
├── config.prod.yaml # 生产环境配置
├── config.py # 配置加载模块
├── .env.example # 环境变量示例
└── .env # 环境变量需手动创建Git忽略
```
## 环境切换
通过设置 `ENV` 环境变量来切换环境:
### Windows (CMD)
```bash
set ENV=dev
python main.py
```
### Windows (PowerShell)
```powershell
$env:ENV="dev"
python main.py
```
### Linux/Mac
```bash
ENV=dev python main.py
```
或者在 `.env` 文件中设置:
```
ENV=dev
```
## 配置优先级
1. **环境变量** - 最高优先级
2. **配置文件** - config.{ENV}.yaml
3. **代码默认值** - 最低优先级
## 配置项说明
### 开发环境 (config.dev.yaml)
- **数据库**: 本地MySQL (localhost:3306)
- **调度器**: 启用每5秒执行一次测试用
- **日志级别**: DEBUG
### 生产环境 (config.prod.yaml)
- **数据库**: 远程MySQL (8.149.233.36:3306)
- **调度器**: 启用每5分钟执行一次
- **日志级别**: INFO
## 使用示例
### 1. 开发环境
创建 `.env` 文件:
```bash
ENV=dev
```
启动服务:
```bash
python main.py
```
### 2. 生产环境
创建 `.env` 文件:
```bash
ENV=prod
```
启动服务:
```bash
python main.py
```
### 3. 覆盖配置
如需临时修改某些配置,可在 `.env` 中添加:
```bash
ENV=dev
DB_HOST=192.168.1.100
SCHEDULER_CRON=0 */10 * * * *
```
## 与Go服务的配置对应关系
| Python配置 | Go配置 | 说明 |
|-----------|--------|------|
| config.dev.yaml | config/config.dev.yaml | 开发环境配置 |
| config.prod.yaml | config/config.prod.yaml | 生产环境配置 |
| ENV环境变量 | ENV环境变量 | 环境切换 |
| database.username | database.username | 数据库用户名 |
| database.dbname | database.dbname | 数据库名称 |
## 注意事项
1. **密码安全**: 生产环境请修改 `config.prod.yaml` 中的数据库密码
2. **Git忽略**: `.env` 文件已被Git忽略不会提交到代码库
3. **环境变量**: 环境变量会覆盖配置文件中的同名配置
4. **调度器频率**: 开发环境默认5秒执行一次生产环境默认5分钟执行一次