SuperAPI AI 工具集

deployment-patterns

部署与运维

查看项目

更新于 10-16 08:45

技能介绍

用途:把项目部署到 Vercel、Railway 或 Docker,按平台最佳实践执行。

平台选择:Next.js 前端用 Vercel(原生支持、边缘函数);Python 后端用 Railway(Nixpacks、健康检查);ML/GPU 负载用 RunPod(GPU、vLLM);本地开发用 Docker(环境一致)。

Vercel:用 vercel.json 配置 monorepo(framework、installCommand、buildCommand、outputDirectory)。环境变量可命令行添加,如 vercel env add VITE_SUPABASE_URL production,预览用 preview scope。SPA 路由在 vercel.json 加 rewrites 将 /(.*) 指向 /。部署命令:生产 vercel --prod,预览 vercel。

Railway:用 railway.json 指定 NIXPACKS 构建、startCommand、healthcheckPath、healthcheckTimeout、重启策略。敏感变量需在控制台 Variables 手动配置。后端须实现 /health 端点。

Docker:多阶段 Dockerfile(builder 阶段导出 requirements,运行阶段安装并 COPY src,CMD 启动);本地开发用 docker-compose.yml 挂载源码与 env_file。

部署前检查:测试通过、无硬编码密钥、环境变量写入 .env.example、CLAUDE.md 更新、本地构建成功。

排错:Vercel 用 vercel logs,常见缺环境变量、构建超时、模块缺失;Railway 看面板日志,常见健康检查超时、变量缺失、poetry.lock 问题;Docker 先本地 docker build -t test . 再 docker run -it test,检查系统依赖。

CI/CD:GitHub Actions 可用 amondnet/vercel-action,配合 VERCEL_TOKEN、ORG_ID、PROJECT_ID 密钥,vercel-args 传 --prod。

限制:资料未提供各平台收费、配额与具体价格信息;示例项目数量仅作参考。