跳转到内容
本站为社区维护的非官方中文翻译,与 Cloudflare, Inc. 无关联。本站不提供账户登录,请勿在任何非官方站点输入您的 Cloudflare 账户信息。官方文档:developers.cloudflare.com

在 sandbox 中处理文件

最后更新 查看 MarkdownAgent 设置

@cloudflare/sandbox 中的 Files 类可在 Worker 与正在运行的 sandbox 之间移动文件,并提供常见的文件系统操作。更多信息请参阅 在 sandbox 内外移动文件。

每个沙盒名称都映射到一个 Durable Object,后者会在需要时启动 Linux 实例。停止实例会删除其磁盘上的文件。更多信息请参阅沙盒生命周期。

持久化

你可以通过多种方式保留沙盒中的文件,从根文件系统快照到保存在 R2 中的单个目录:

目标 指南 取舍
在后续 session 中继续 Agent 工作区 使用 snapshot 保存并恢复 sandbox 保存根文件系统,但不包括已挂载的目录
无需显式保存调用即可保留工作区 自动保存 sandbox 与 snapshot 相同,并在 Durable Object 中增加 alarm
跨镜像保留项目,或超过 30 天 将目录备份到 R2 保存一个目录,且 Durable Object 存储每条备份记录
与其他系统共享任务输入和输出 挂载 R2 bucket 重命名、锁和权限的行为与本地磁盘不同

组合使用这些方法

snapshot 不包含挂载的目录,因此 sandbox 可以同时使用两者。例如,编程 Agent 可以将仓库和依赖保存在 snapshot 中,并将结果写入挂载的 bucket,供其他 Worker 读取。更多信息请参阅 Sandbox 生命周期。

相关资源

这篇文档对您有帮助吗?