Cloudflare 重新设计了 Cloudflare Containers,以满足 AI 代理为每项任务创建隔离 Linux 环境的需求,而不再依赖部署时确定的固定设置。此次更新允许代码在运行时选择容器镜像及其资源类型,并引入了与Durable Objects关联的新调度路径,使启动时间提升六倍以上;文件系统快照功能目前也已以公开测试版形式提供。
在由 ComputeSDK 独立进行的 Burst TTI Benchmark 测试中,中位数从 4.049 秒降至 648 毫秒;第 95 百分位耗时从 5.839 秒降至 910 毫秒,第 99 百分位耗时从 6.717 秒降至 1.129 秒。Cloudflare 表示,初步压力测试在六个地点于 5.387 秒内成功启动了 100,000 个容器;这些数字属于初步数据,不一定代表所有使用模式。
实际发生了哪些变化?
过去,选择容器镜像和资源大小需要为每种组合创建独立的应用和命名空间,然后在它们之间转发任务。借助新的 durable_object 策略,代码可以在了解任务需求后选择 Node.js 或 Python 环境,以及 standard-1 或 standard-2 等实例类型。因此,添加新环境变成了代码变更,而不是部署新应用。
该设计还将更新逻辑转移到了与每个容器关联的 Durable Object 中。开发者可以为正在运行的项目固定某个镜像,或针对一部分新环境执行渐进式发布,也可以将迁移推迟到后续会话或自然保存点,然后通过更改下一次运行时使用的镜像来回滚。
开箱即用的环境与可恢复快照
为了缩短系统准备时间,Cloudflare 提供了 cloudflare/debian-trixie 镜像,其中包含 Debian Trixie Slim 和 Node.js 24.20.0 LTS。无需创建 Dockerfile,也无需构建镜像并将其推送到 Cloudflare,即可运行该镜像;随后可以在容器内使用 exec() 设置代码仓库、软件包和工具。
文件系统快照则支持在安装依赖项并完成修改后保存工作区,然后在后续会话中恢复。相同的快照还可以作为多个环境不可变的起点,这适用于代理测试,因为这类测试需要在不同尝试之间保持代码仓库、工具和输入文件一致。
为什么这条消息很重要?
此次更新使容器成为 Durable Object 的计算扩展:后者负责保存身份、状态、策略和生命周期,而容器则提供一个 Linux 空间,可以在工作停止时暂停,并在需要时恢复。这对编程代理开发者、评估会话、强化学习系统,以及持续数天且需要保留文件的任务都很重要。
Cloudflare 提到的使用场景包括与 Cursor Cloud Agents、Devin Outposts、OpenAI Agents API 和 Claude Managed Agents 的集成,以及来自 Base44 和 Kilo Code 的示例。这里的核心价值不仅是更快的启动速度,还在于将环境决策、迁移策略和状态保存转移到应用自身的逻辑中。
兼容性与迁移路径
新的 durable_object 策略和文件系统快照目前以公开测试版形式提供,而部分新功能只能通过 ctx.container 使用。Cloudflare 将保留 Container class 和 Legacy Sandbox class 至 2026 年 12 月 31 日;现有部署在该日期之后仍将继续运行,但这些类将不再获得更新。该公司建议迁移到 Durable Object,并直接使用 this.ctx.container;与此同时,Sandbox SDK 1.0 已成为一套运行在开发者自有 Durable Object 类中的工具,而不再是独立的基础类。