Skip to content
返回部署

部署到 DO App Platform

DigitalOcean 托管 PaaS,git push 部署、自动扩缩和托管 DB。

平台入门

为什么

App Platform 是 DO 对 Heroku/Render 的回应 — git push 部署、自动 HTTPS 和托管 Postgres/Redis。同等规格比 Heroku 便宜,集成 DO 生态。

平台即服务采用率 2024 年增长 24%,团队从虚拟机管理转向 git push 部署。the cloud infrastructure market reached $330B in 2024, growing 22% year-over-year (Synergy Research),PaaS 层捕获了大多数新工作负载。

何时使用

DO 上托管 PaaS 用 App Platform,尤其已用 DO 其他资源时。需完整 VM 控制避免 — 用 Droplet。

如何做

1. 创建 — cloud.digitalocean.com → 应用 → 创建 → 连接仓库 2. 构建 — 自动检测或指定构建/运行命令 3. 环境 — app spec 设环境变量 4. 数据库 — 组件 → 数据库 → PostgreSQL 5. 域名 — 设置 → 域名,自动 TLS 6. 扩缩 — 设置 → 实例大小和数量 7. App spec — .do/app.yaml 做 IaC

示例

# .do/app.yaml name: myapp services: - name: web source_dir: / github: { repo: user/repo, branch: main } run_command: npm start environment_slug: node-js instance_count: 2 instance_size_slug: basic-xxs routes: [{ path: / }] databases: - name: db engine: pg version: "15"

常见问题

  • ⚠构建命令未检测 — app spec 或面板指定
  • ⚠数据库未链接 — 加数据库组件并在环境变量引用
  • ⚠环境间配置漂移 — 使用基础设施即代码(Terraform/Pulumi)保持 dev/staging/prod 一致

最佳实践

  • ✓用 .do/app.yaml 做 IaC — 版本控制可复现部署
  • ✓从 basic-xxs 开始,按需扩缩 — 按用付费
  • ✓设置健康检查和优雅关闭 — 处理 SIGTERM 以在退出前排空进行中的请求

常见问题解答