feat: 新增生产环境 compose 编排(直连公共 MySQL)
- 新增 docker-compose.production.yml:仅 app + nginx,数据库连公司公共 MySQL,MYSQL_HOST/MYSQL_PASSWORD 必填校验 - 新增 .env.production.example 环境模板,.gitignore 白名单放行 - 修复 docker-compose.self-hosted.yml 漏转发 AI_TAGGING_TOOL 与 WECOM_* 共 7 个环境变量 - 部署指南补充两套编排文件选用说明与生产启动命令;忽略真实账号数据 CSV 防误提交
This commit is contained in:
@@ -19,6 +19,13 @@
|
||||
|
||||
第一版按单实例 KOC 服务设计。MySQL 和上传目录均持久化。以后需要横向扩容时,可以把上传卷换成共享 NAS;对象存储接口已与业务代码分离。
|
||||
|
||||
仓库提供两套编排文件,按数据库归属选用:
|
||||
|
||||
- `docker-compose.self-hosted.yml`:自带 MySQL 容器与数据卷,适合独立服务器或没有公共数据库的环境;
|
||||
- `docker-compose.production.yml`:只包含 KOC 服务与入口 Nginx,直连公司公共 MySQL(要求 MySQL 8 + utf8mb4,账号需对目标库有建表与读写权限),配套环境模板 `.env.production.example`。
|
||||
|
||||
两套文件的入口 Nginx 都建议保留:它除了反向代理,还托管 `/koc/` 领取页静态文件、`/api/mcp` 长连接规则与 85 MB 上传限制,公司网关只需把域名转发到容器的 `HTTP_PORT`。
|
||||
|
||||
## 2. 服务器要求
|
||||
|
||||
- Linux 服务器一台,建议至少 4 核、8 GB 内存、100 GB 数据盘;
|
||||
@@ -72,7 +79,16 @@ docker compose --env-file .env.self-hosted \
|
||||
-f docker-compose.self-hosted.yml up -d --build
|
||||
```
|
||||
|
||||
应用容器启动时会先执行同一套数据库迁移脚本,成功后才启动 KOC 服务。查看状态:
|
||||
生产环境使用公司公共 MySQL 时改用:
|
||||
|
||||
```bash
|
||||
cp .env.production.example .env.production
|
||||
# 编辑 .env.production:MYSQL_HOST 指向公共实例,其余变量同 self-hosted
|
||||
docker compose --env-file .env.production \
|
||||
-f docker-compose.production.yml up -d --build
|
||||
```
|
||||
|
||||
应用容器启动时会先执行同一套数据库迁移脚本,成功后才启动 KOC 服务。查看状态(生产模式把 `-f` 与 `--env-file` 换成对应文件即可):
|
||||
|
||||
```bash
|
||||
docker compose --env-file .env.self-hosted \
|
||||
|
||||
Reference in New Issue
Block a user