deployment
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseDeployment Router
部署路由指南
Quick guide to choose the right deployment platform and skill for your workload.
这份快速指南将帮助你为工作负载选择合适的部署平台及对应技能。
Platform Decision Matrix
平台决策矩阵
| Workload | Platform | Skill |
|---|---|---|
| Next.js / React frontend | Vercel | |
| Static sites, SPAs | Vercel or Cloudflare Pages | |
| FastAPI / Python backend | Fly.io | |
| Stateful backend (SQLite, volumes) | Fly.io | |
| Docker containers | Fly.io | |
| Object storage / CDN | Cloudflare R2 | |
| Edge database (SQLite) | Cloudflare D1 | |
| Session/config caching | Cloudflare KV | |
| Serverless functions | Cloudflare Workers | |
| 工作负载 | 平台 | 技能 |
|---|---|---|
| Next.js / React 前端 | Vercel | |
| 静态站点、单页应用 | Vercel 或 Cloudflare Pages | |
| FastAPI / Python 后端 | Fly.io | |
| 有状态后端(SQLite、存储卷) | Fly.io | |
| Docker 容器 | Fly.io | |
| 对象存储 / CDN | Cloudflare R2 | |
| 边缘数据库(SQLite) | Cloudflare D1 | |
| 会话/配置缓存 | Cloudflare KV | |
| 无服务器函数 | Cloudflare Workers | |
Quick Reference by Stack
按技术栈快速参考
Full-Stack Next.js + Python API
全栈 Next.js + Python API
Frontend (Next.js) → Vercel → vercel-deployment
Backend (FastAPI) → Fly.io → fly-deployment
File uploads → Cloudflare R2 or Fly volumeFrontend (Next.js) → Vercel → vercel-deployment
Backend (FastAPI) → Fly.io → fly-deployment
File uploads → Cloudflare R2 or Fly volumeEdge-First Stack (Cloudflare)
边缘优先技术栈(Cloudflare)
Frontend (static/SPA) → Cloudflare Pages
API (Workers) → Cloudflare Workers → cloudflare-r2-d1
Database → Cloudflare D1 → cloudflare-r2-d1
Files → Cloudflare R2 → cloudflare-r2-d1Frontend (static/SPA) → Cloudflare Pages
API (Workers) → Cloudflare Workers → cloudflare-r2-d1
Database → Cloudflare D1 → cloudflare-r2-d1
Files → Cloudflare R2 → cloudflare-r2-d1Monorepo Pattern
单仓多应用模式
apps/web (Next.js) → Vercel → vercel-deployment
apps/api (FastAPI) → Fly.io → fly-deploymentapps/web (Next.js) → Vercel → vercel-deployment
apps/api (FastAPI) → Fly.io → fly-deploymentPlatform Strengths
平台优势
Vercel
Vercel
- Zero-config Next.js deployment
- Preview deployments per PR
- Edge functions & middleware
- Automatic HTTPS & CDN
Best for: Next.js, React, static sites
- 零配置Next.js部署
- 每个PR对应预览部署
- 边缘函数与中间件
- 自动HTTPS与CDN
最适合: Next.js、React、静态站点
Fly.io
Fly.io
- Run any Docker container
- Persistent volumes (SQLite, file storage)
- Multiple regions with data locality
- WebSocket support
Best for: Python backends, stateful apps, containers
- 运行任意Docker容器
- 持久化存储卷(SQLite、文件存储)
- 多区域部署,支持数据本地化
- WebSocket 支持
最适合: Python后端、有状态应用、容器化应用
Cloudflare
Cloudflare
- Edge-first (runs in 300+ cities)
- No cold starts (Workers)
- Integrated storage (R2, D1, KV)
- Zero egress fees on R2
Best for: Low-latency APIs, edge computing, global scale
- 边缘优先部署(在300+城市运行)
- 无冷启动(Workers)
- 集成存储服务(R2、D1、KV)
- R2 无出口流量费用
最适合: 低延迟API、边缘计算、全球规模化应用
Common Deployment Patterns
常见部署模式
Pattern 1: Vercel + Fly.io
模式1:Vercel + Fly.io
User → Vercel (frontend) → Fly.io (API) → SQLite (volume)Deploy commands:
bash
undefinedUser → Vercel (frontend) → Fly.io (API) → SQLite (volume)部署命令:
bash
undefinedFrontend
Frontend
vercel --prod
vercel --prod
Backend
Backend
fly deploy
undefinedfly deploy
undefinedPattern 2: Full Cloudflare
模式2:全Cloudflare部署
User → Pages (frontend) → Workers (API) → D1 (database) + R2 (files)Deploy command:
bash
wrangler deployUser → Pages (frontend) → Workers (API) → D1 (database) + R2 (files)部署命令:
bash
wrangler deployPattern 3: Hybrid (Vercel + Cloudflare Storage)
模式3:混合部署(Vercel + Cloudflare存储)
User → Vercel (Next.js) → Cloudflare R2 (uploads) + external DBUser → Vercel (Next.js) → Cloudflare R2 (uploads) + external DBTroubleshooting Quick Links
常见问题排查快速链接
| Issue | Check Skill |
|---|---|
| Vercel deployment issues | |
| Docker build fails | |
| Volume mount error | |
| D1 query timeout | |
| R2 upload fails | |
| 问题 | 查看对应技能 |
|---|---|
| Vercel 部署问题 | |
| Docker 构建失败 | |
| 存储卷挂载错误 | |
| D1 查询超时 | |
| R2 上传失败 | |
Cost Comparison (Free Tiers)
免费层成本对比
| Platform | Free Tier Highlights |
|---|---|
| Vercel | 100GB bandwidth, serverless functions, preview deploys |
| Fly.io | 3 VMs (256MB), 3GB storage, 160GB bandwidth |
| Cloudflare | 100K Worker requests/day, 10GB R2, 5GB D1 |
| 平台 | 免费层亮点 |
|---|---|
| Vercel | 100GB 带宽、无服务器函数、预览部署 |
| Fly.io | 3台虚拟机(256MB内存)、3GB存储、160GB带宽 |
| Cloudflare | 每日10万次Worker请求、10GB R2存储、5GB D1存储 |
When to Use Each Skill
各技能适用场景
Use when:
vercel-deployment- Deploying Next.js or React apps
- Configuring vercel.json
- Setting environment variables
- Troubleshooting build errors
Use when:
fly-deployment- Writing Dockerfiles for Fly.io
- Configuring fly.toml
- Setting up volumes or persistent storage
- Deploying Python/FastAPI backends
Use when:
cloudflare-r2-d1- Storing files in R2
- Working with D1 SQLite database
- Caching with KV
- Writing Cloudflare Workers
当你需要以下操作时使用 :
vercel-deployment- 部署Next.js或React应用
- 配置vercel.json
- 设置环境变量
- 排查构建错误
当你需要以下操作时使用 :
fly-deployment- 为Fly.io编写Dockerfile
- 配置fly.toml
- 设置存储卷或持久化存储
- 部署Python/FastAPI后端
当你需要以下操作时使用 :
cloudflare-r2-d1- 在R2中存储文件
- 操作D1 SQLite数据库
- 使用KV进行缓存
- 编写Cloudflare Workers