feat(gateway): add nginx gateway for maintenance mode fallback

Proxy frontend traffic through Nginx to handle service restarts gracefully
Serve a static 503 maintenance page when frontend or backend is unavailable
Update deployment design docs and docker-compose configuration
This commit is contained in:
2026-05-04 09:12:39 +08:00
parent 03f5735bd2
commit bcff83a512
4 changed files with 288 additions and 2 deletions

View File

@@ -930,6 +930,13 @@ API 暴露边界:
- SEO metadata 只能使用公开业务数据和系统文案;不得暴露邮箱、权限 key、token/hash、内部审计 payload、调试信息或实现说明。
- 多语言 metadata 使用当前前端语言和系统文案回退机制;当前没有语言专属 URL因此暂不输出 `hreflang`
## 部署与升级维护
- Docker 部署时公开前端端口由 `frontend_gateway` 承载,正常流量代理到 `frontend` 服务。
- `frontend``docker compose up -d --build` 重建、启动中或临时不可达时,`frontend_gateway` 返回静态升级维护页并保持公开端口可访问;后端 `/health` 不可用时,前端网关也返回同一维护页,避免用户看到静态页面后遇到 API 不可用。
- 升级维护页是基础设施级静态 fallback不依赖 Vue、Vue I18n、后端 API 或数据库;页面只展示正式用户文案和品牌视觉,不展示构建日志、调试信息、内部字段或实现说明。
- 升级维护页使用 `503``Retry-After: 300``Cache-Control: no-store``noindex`,提示用户 Pokopia Wiki 正在升级并将在约 5 分钟内恢复。
## API 概览
公开浏览 API