成为赞助商——支持中文 Agent 生态

了解赞助
库Agent场景库
← 返回用例列表

Fly.io fly deploy Machines 发布简报

按 fly.toml、镜像来源、release command、部署策略与 smoke checks,整理 Machines 发布简报;不代持 API token、不代对生产强制 rolling。

场景说明

面向独立开发者:把「改完代码怎么安全 fly deploy」写成可对账步骤,区别于 Vercel Cron/Env 与仅看部署日志。

案例叙事

01他们做了什么

应用已在 Fly 上,改完 Dockerfile 或 fly.toml 后直接 fly deploy,却碰到:迁移没跑、策略选成一次性全停、或启动后立刻非零退出被 smoke checks 打回。

Fly.io Docs《Deploy an app》(dateModified 可核)说明:fly deploy 属于 Fly Launch,按本地 fly.toml 构建/获取镜像并在一台或多台 Fly Machines 上拉起发布。首次部署会按进程组与服务/卷配置创建一或两台 Machine;未显式定义进程组时,首发常给两台以冗余。后续部署把托管 Machine 作为一组更新。镜像来源优先级包括:--image 或 [build] 指定镜像、fly.toml 构建方式、--dockerfile、本地 Dockerfile 等。带合格 HTTP 服务且尚无公网 IP 时,可自动配置公网 IPv6 与共享 IPv4 Anycast。文档区分 Fly Launch 托管 Machine(带 fly_platform_version 元数据、随 deploy 成组更新)与 fly machine run 等创建的非托管 Machine。Release commands 可在正式部署前于临时 VM 跑一次性命令(如迁移),但临时 VM 不挂载你为应用配置的卷。部署策略可选 rolling(默认,逐台成功后再下一台)、immediate、canary、bluegreen 等。Smoke checks 在 Machine 进入 started 后约 10 秒内监视,若持续非零退出重启则部署失败。本场景据此输出发布简报。禁止声称「生产已发布成功」。

02实际效果

  • 源未披露量化「回滚时间」;公开文只描述镜像选择、策略、release command 与 smoke checks。
  • 能把「迁移放错时机 / immediate 全停 / 非托管 Machine 未被更新」拆开。
  • 为独立应用提供可落地的发布前核对清单。

03值得知道

  • 并非所有变更都要新 App release(例如仅加 IP);改密钥等仍可能触发重启/新部署。
  • 卷挂载变更有限制:已挂卷的 Machine 不能靠 deploy 换成另一卷,只能改挂载点等。
  • 上面写的是文档行为,不是你 app 当前 Machine 列表。

04可复制提示词

fly deploy 发布简报

你是 Fly.io 发布助手。只给 fly deploy 核对简报,不要编造已发布成功。

应用/进程组摘要:{{app_brief}}
拟改动:{{change_brief}}
是否有迁移:{{has_migration}}
策略偏好:{{strategy_pref}}

输出 Markdown:
1. 镜像来源核对
2. release command 是否适用
3. 策略与 smoke checks 提问
4. 非生产演练步骤
禁止索要 API token;禁止代跑生产 deploy。

部署失败/反复重启复盘提纲

fly deploy 失败或 Machine 启动后重启,请写复盘提纲。

日志摘要:{{logs}}
策略:{{strategy}}
是否改了卷/密钥:{{changed}}

输出:
1. 是否被 smoke checks 判失败
2. 是否 immediate 导致不可用窗口过大
3. 是否更新了非托管 Machine 预期外配置
4. 下一步人工验证
不要伪造「已回滚成功」。

05一手来源

Fly.io Documentation · Deploy an app ↗

文档更新

怎么做

  1. 粘贴应用名/进程组摘要、拟改动(镜像/配置/迁移)、当前策略偏好与失败症状
  2. Agent 按官方 Deploy an app 说明输出:镜像选择链→托管 vs 非托管 Machine→release command→rolling/canary 等策略与 smoke checks 提问清单
  3. 人工在非生产 app 演练;Agent 不代执行生产 deploy、不代持 token

实用提示

  • 首次部署常按进程组创建一到两台 Machine 做冗余;后续 deploy 以 Fly Launch 托管的 Machine 为一组更新
  • 与 vercel-cron-jobs-function-brief 不同:本条是 Fly Machines 应用发布,不是 Vercel 定时调用 Function
#Fly.io#fly deploy#Machines#发布#独立开发者