# 部署说明 ## 目标 统一采用环境文件驱动部署: - `infra/docker/compose.yml` 作为本地/开发 compose - `.env.staging` 作为测试环境配置 - `.env.production` 作为生产环境配置 --- ## 环境加载规则 ### 开发环境 - 默认读取 `.env` - 没有 `.env` 时回退到代码默认值 ### Staging - 读取 `.env.staging` - `APP_ENV=staging` - 端口和数据库与生产隔离 ### Production - 读取 `.env.production` - `APP_ENV=production` - 必须替换 `CHANGE_ME` 项 --- ## Docker Compose 约定 ### 开发/本地 ```bash cd infra/docker docker-compose up -d ``` ### Staging ```bash cp .env.staging .env cd infra/docker docker-compose up -d ``` ### Production ```bash cp .env.production .env cd infra/docker docker-compose up -d ``` --- ## Gitea Actions 部署建议 部署时建议先放置环境文件,再启动服务: ```bash cp .env.staging /var/lib/xiaoxia-saas-staging/.env cd /var/lib/xiaoxia-saas-staging docker-compose up -d ``` 生产环境类似: ```bash cp .env.production /var/lib/xiaoxia-saas-production/.env cd /var/lib/xiaoxia-saas-production docker-compose up -d ``` --- ## 注意事项 - `.env.production` 不要把真实密钥提交进仓库 - `MINIO_ACCESS_KEY` / `MINIO_SECRET_KEY` 要在部署时注入 - 数据库密码要通过密钥管理或服务器环境变量替换 - 生产环境 `DEBUG=false`