Files
ai_wht_wechat/backend/CONFIG_GUIDE.md
2026-01-06 19:36:42 +08:00

2.3 KiB
Raw Permalink Blame History

Python服务配置说明

配置文件结构

Python服务现在使用与Go服务相同的配置文件结构

backend/
├── config.dev.yaml    # 开发环境配置
├── config.prod.yaml   # 生产环境配置
├── config.py          # 配置加载模块
├── .env.example       # 环境变量示例
└── .env              # 环境变量需手动创建Git忽略

环境切换

通过设置 ENV 环境变量来切换环境:

Windows (CMD)

set ENV=dev
python main.py

Windows (PowerShell)

$env:ENV="dev"
python main.py

Linux/Mac

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 文件:

ENV=dev

启动服务:

python main.py

2. 生产环境

创建 .env 文件:

ENV=prod

启动服务:

python main.py

3. 覆盖配置

如需临时修改某些配置,可在 .env 中添加:

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分钟执行一次