运维与上线

容器与上线就绪检查

构建 Web、管理后台、Worker 和 Content Studio 镜像,独立执行迁移,并运行完整上线审计。

已根据 starter 提交 2a1a04a 验证。

仓库提供四个独立生产镜像:客户 Web、管理控制台、持久 Worker 和可选 Content Studio。PostgreSQL、Redis 和对象存储仍是外部服务,需要独立的备份、加密和可用性策略。

进程Dockerfile默认端口
WebDockerfile.web3000
AdminDockerfile.admin3001
WorkerDockerfile.worker
Content StudioDockerfile.studio3002
pnpm customize
./scripts/setup.sh production
pnpm containers:check

公开的 NEXT_PUBLIC_* 是构建参数;数据库、认证、Stripe、Resend 和存储密钥只能在运行时提供。最终镜像使用固定的非 root Node 运行时、尽可能只读的文件系统、被移除的 Linux capability,且不包含包管理器或开发工具。

镜像启动时不会执行迁移。推广容器前单独运行:

pnpm db:migrate:prod
pnpm db:check:prod
pnpm launch:check

launch:check 汇总产品配置、生产环境、容器契约、迁移、数据完整性、保留策略、应用测试、Studio 测试和全部构建。只有当被省略的检查在同一次发布中由其他流程完成并记录时,才使用 skip 参数。

可以上线的标准: 所有镜像来自同一提交,迁移已应用,readiness 健康,Worker 与调度器在线,恢复演练满足目标,生产环境没有 demo flag,管理 MFA 正常,上线审计为绿色。

容器与上线就绪检查 · Sushi SaaS