docs: 完成生产上线风险修复记录
This commit is contained in:
@@ -28,6 +28,23 @@ cd ai_knowledge_base_v2
|
||||
docker compose -f docker-compose.dev.yml up --build
|
||||
```
|
||||
|
||||
## 生产环境启动
|
||||
|
||||
生产环境必须使用 `docker-compose.prod.yml`。先复制根目录 `.env.example` 为 `.env`,替换其中全部示例密码和密钥,再执行:
|
||||
|
||||
```bash
|
||||
docker compose -f docker-compose.prod.yml config --quiet
|
||||
docker compose -f docker-compose.prod.yml up -d --build
|
||||
```
|
||||
|
||||
生产编排只向宿主机暴露统一网关端口;MySQL、Redis、后端、用户端和管理端均仅在容器网络内访问。用户端与管理端使用 Nginx 静态镜像,后端默认启动 4 个 worker。
|
||||
|
||||
`DATABASE_URL` 和 `REDIS_URL` 中的密码如包含 `@`、`:`、`/`、`#` 等特殊字符,必须先进行 URL 编码。`CONFIG_ENCRYPTION_KEY` 可通过以下命令生成,生成后必须妥善备份且不能随意更换:
|
||||
|
||||
```bash
|
||||
python -c "from cryptography.fernet import Fernet; print(Fernet.generate_key().decode())"
|
||||
```
|
||||
|
||||
如果用户端问答需要直读飞书知识库,优先在管理后台“系统设置 / 外部服务”中配置飞书 AppID 和 AppSecret,保存后即可生效,不需要重建容器。
|
||||
|
||||
也可以在启动前通过后端运行环境变量配置,作为系统设置为空时的兜底:
|
||||
@@ -126,7 +143,7 @@ BACKUP_DIR=./backups ./scripts/mysql_backup.sh
|
||||
|
||||
## 生产待补事项
|
||||
|
||||
- 前端生产镜像建议改为 Nginx 静态服务,不使用 Vite dev server。
|
||||
- 模型 API Key 建议加密保存或使用密钥管理服务。
|
||||
- 后端需要接入结构化日志采集。
|
||||
- 需要配置 HTTPS、域名、访问日志和基础监控。
|
||||
- 在域名入口或上游反向代理配置 HTTPS 证书。
|
||||
- 接入集中式结构化日志、主机与容器指标监控和异常告警。
|
||||
- 根据正式流量压测结果调整 worker、数据库连接池和问答队列参数。
|
||||
- 定期执行数据库备份和恢复演练,并单独备份 `CONFIG_ENCRYPTION_KEY`。
|
||||
|
||||
Reference in New Issue
Block a user