内容提要
Vercel Sandbox新增fork功能,可从源沙箱快照创建分支,继承配置和环境变量,支持参数覆盖。适用于多租户模板或并行变体。提供SDK和CLI两种方式,需升级至最新版本。
延伸解读
快照继承与参数覆盖
分支从源沙箱的当前快照创建,继承配置和环境变量。若源正在运行,则使用最近保存的状态,而非实时内存状态。若源无快照,则回退到全新创建,使用源的运行时和配置。传入的参数会覆盖继承值,便于按需调整资源或名称。
典型使用场景
该功能适用于多租户场景,可为每个租户复制模板;也可用于从共享基础分支出代理,或并行运行同一配置的多个变体。分支创建耗时与新建沙箱相当,且受相同限制,适合需要快速复制环境的开发流程。
使用方式与版本要求
可通过SDK的Sandbox.fork()方法或CLI的sandbox fork命令实现。SDK支持在调用时指定覆盖字段,CLI则通过参数传递。使用前需升级至最新版本:SDK用pnpm install @vercel/sandbox@latest,CLI用pnpm install -g sandbox@latest。
Q&A
Vercel Sandbox 的 fork 功能是什么?
Vercel Sandbox 新增了 fork 功能,可以从源沙箱的当前快照创建一个新的沙箱,继承其配置和环境变量。
如何使用 Vercel Sandbox 的 fork 功能?
可以通过 SDK 或 CLI 使用。SDK 示例:`Sandbox.fork({ sourceSandbox: 'prod-agent' })`;CLI 示例:`sandbox fork prod-agent --name forked-prod-agent --vcpus 4`。
fork 沙箱时,如果源沙箱正在运行,会基于什么状态创建?
如果源沙箱正在运行,fork 会基于最新的已保存状态,而不是实时的内存状态。
fork 沙箱时,如果源沙箱没有快照会怎样?
如果源沙箱没有快照,fork 会回退到全新创建,使用源沙箱的运行时和配置。
fork 沙箱时,可以覆盖哪些参数?
可以覆盖任何参数,例如名称和资源(如 vcpus),未覆盖的参数会从源沙箱继承。
fork 沙箱的典型使用场景有哪些?
典型场景包括:从共享基础分支出一个代理、为每个租户提供模板的独立副本、并行运行同一设置的多个变体。
fork 一个沙箱需要多长时间?
fork 一个沙箱大约与创建沙箱所需时间相同,并遵循相同的限制。
如何开始使用 fork 功能?
需要升级到最新版本:SDK 使用 `pnpm install @vercel/sandbox@latest`,CLI 使用 `pnpm install -g sandbox@latest`。