chore(部署): 增加 Docker 部署配置
关键改动: - 新增本地和生产 Docker Compose、Web/Server Dockerfile 与 Nginx 模板 - 增加生产部署校验脚本、环境变量示例和 Prisma 初始迁移 - 更新部署文档、README 和架构/决策/流程/路线图说明 Co-Authored-By: Codex GPT-5 <codex@openai.com>
This commit is contained in:
@@ -123,6 +123,25 @@ DevTask 没有"已完成"状态,"已提测"就是终态——开发交付完
|
||||
|
||||
**后续 V2.2(计划):** 将 `app_data` 中稳定的数据形状逐步拆成关系表和领域 CRUD API。拆表前不要恢复业务 localStorage 缓存,避免线上部署后出现多端数据分叉。
|
||||
|
||||
## 生产部署层(2026-07-01)
|
||||
|
||||
当前仓库已补齐云服务器生产部署基线:
|
||||
|
||||
- `Dockerfile.web`:以 monorepo 根目录为 build context,构建 `@ftb/shared` 和 Next.js 前端,运行 `pnpm --filter web start`。
|
||||
- `Dockerfile.server`:构建 `@ftb/shared` 和 NestJS 后端,执行 `prisma generate`,运行 `pnpm --filter server start:prod`。
|
||||
- `docker-compose.prod.yml`:编排 `web`、`server`、`postgres`、`redis`、`nginx` 五个服务,服务间通过 Docker 内网通信,对外只暴露 Nginx 80 端口。
|
||||
- `docker-compose.local.yml`:本地服务器/局域网部署入口,同样编排五个服务,默认对外暴露 `8080`,使用独立 `local_*` volumes,避免与云服务器生产数据混用。
|
||||
- `deploy/nginx/default.conf.template`:同域反向代理,`/api/` 转发到 NestJS,其他路径转发到 Next.js。
|
||||
- `.env.production.example` / `.env.local-server.example`:生产和本地服务器配置模板;正式部署复制为 `.env.production` 或 `.env.local-server`,不提交真实密钥。
|
||||
|
||||
生产持久化边界:
|
||||
|
||||
- 业务主数据在 PostgreSQL `postgres_data` volume 中。
|
||||
- Redis AOF 在 `redis_data` volume 中。
|
||||
- AI Provider 配置文件在 `server_data` volume 中,对应容器路径 `/app/apps/server/data`。
|
||||
|
||||
生产数据库初始化使用 Prisma migration:`pnpm --filter server db:deploy`。本地开发仍可使用 `pnpm db:migrate`。
|
||||
|
||||
## 权限模型(轻量)
|
||||
|
||||
V1 仅做前端校验,无后端鉴权:
|
||||
|
||||
Reference in New Issue
Block a user