E2B 是一个面向 AI Agent、编程助手和自动化测试场景的开源沙箱平台。每个 Sandbox 运行在独立的 Firecracker microVM 中,为 Agent 执行代码、处理文件和运行命令提供隔离环境。
它具备以下核心能力:
- 隔离运行:每个 Sandbox 拥有独立内核,通过 KVM 实现硬件虚拟化隔离。
- 快速启动与恢复:通过预构建的 VM 快照启动沙箱,支持暂停与恢复,延续任务执行状态。
- 模板与 SDK:通过 Docker 镜像或 Dockerfile 定制运行环境,使用 Python、TypeScript SDK 集成到 Agent 应用中。
通过阿里云计算巢,可以将 E2B 集群部署到自己的阿里云账号中。选择集群配置后,计算巢自动完成云资源创建、节点初始化、调度集群组建和 E2B 服务部署,交付可通过 SDK 调用、通过 Dashboard 管理的沙箱环境。

在此基础上,计算巢自建 E2B 还提供预热池、OSS 挂载和监控告警等能力,分别用于缩短沙箱创建等待、持久保存业务文件,以及发现和排查运行异常。下面结合实测数据和控制台操作,介绍这些功能的配置与使用。
一、准备工作
从计算巢服务实例的输出页面打开 DashboardUI,登录后进入模板,确认所需 Template 已构建完成。

预热池示例使用 code-interpreter-v1;OSS 示例使用需提前准备的非默认模板 demo。相关入口需具备管理权限,OSS 挂载还需配置 Dashboard 管理令牌。
运行示例前安装 SDK,并配置 E2B_DOMAIN、E2B_API_KEY;使用自签 CA 时再配置 SSL_CERT_FILE。
python -m pip install "e2b==2.30.0"
二、⚡ 预热池:提前准备可用 Sandbox
预热池为指定模板提前创建 Sandbox,兼容请求到达时直接分配,随后自动补充。业务仍通过 Sandbox.create() 调用,无需自行维护实例池。
并发创建实测:在自建 E2B 上使用 base 模板、无 Metadata、secure=False 请求参数,分别并发创建 10、100、300、1000 个 Sandbox。预热池组在测试前准备足够的就绪实例;无预热池组关闭预热池。以下为客户端整批创建请求返回的耗时。
| 并发创建数量 | 无预热池 | 开启预热池 |
|---|---|---|
| 10 | 0.30 秒 | 0.26 秒 |
| 100 | 0.51 秒 | 0.40 秒 |
| 300 | 0.78 秒 | 0.58 秒 |
| 1000 | 3.26 秒 | 1.02 秒 |
开启预热池,10、100、300、1000 并发创建耗时分别减少约 13%、23%、25%、69%,其中 1000 并发从 3.26 秒缩短至 1.02 秒。
进入 预热池 → 创建池,填写名称、模板和目标数量:

以预热 100 个 Sandbox 为例,在上述表单中填写池名称 code-pool,选择模板 code-interpreter-v1,将预热数量设为 100。提交后等待状态变为 ready、就绪数量达到 100 / 100,再使用同一模板并发创建 100 个 Sandbox,观察分配与自动补充情况。
使用时关注两点:
- 容量:按业务并发设置预热数量,空闲实例也占计算资源和并发额度。
- 版本:池固定使用创建时的模板构建,模板更新后需创建新池。
三、📂 OSS 挂载:直接读写业务数据
通过模板挂载 OSS,Agent 可以使用文件目录读取数据集、处理文档和保存结果。文件保留在 OSS 中,可供后续新建的 Sandbox 继续访问。
1. 配置挂载
准备已有 Bucket,并为 Client 节点绑定有权访问目标 Bucket 或 Prefix 的 ECS RAM Role。进入 存储 → 添加 OSS 挂载:

| 配置项 | 示例 |
|---|---|
| Template | demo |
| Bucket / Region | 自己的 Bucket 及其实际地域 |
| OSS 目录 | e2b-demo/workspace |
| Sandbox 目录 | /workspace/data |
| 访问模式 | 只读或读写,按业务需要选择 |
选择模板、填写实际 Bucket 后,点击 测试并保存。配置仅对之后新建的 Sandbox 生效。截图使用示例桶名,展示的是未提交表单。
2. 验证跨 Sandbox 文件读取
先在 OSS 的 e2b-demo/workspace/ 下上传 input.txt,内容为 hello from OSS。以下示例读取输入、写入结果,再销毁沙箱并重新读取:
import os
import uuid
from e2b import Sandbox
connection = {
"domain": os.environ["E2B_DOMAIN"],
"api_key": os.environ["E2B_API_KEY"],
}
path = f"/workspace/data/result-{uuid.uuid4().hex}.txt"
sandbox = Sandbox.create(template="demo", timeout=120, **connection)
try:
assert sandbox.files.read("/workspace/data/input.txt").strip() == "hello from OSS"
sandbox.files.write(path, "processed by E2B")
print("结果路径:", path)
input("在 OSS 控制台确认结果对象后,按回车继续:")
finally:
sandbox.kill()
sandbox = Sandbox.create(template="demo", timeout=120, **connection)
try:
result = sandbox.files.read(path)
assert result == "processed by E2B"
print("新 Sandbox 读取成功:", result)
finally:
sandbox.kill()
验证成功后删除测试对象。OSS 不完全兼容 POSIX 语义,不适合运行依赖文件锁、原子重命名的数据库或程序。
3. 按用户和会话分配工作区
将 OSS 目录改为 {user_id}/workspace/{session_id},即可根据创建请求中的 Metadata 分配路径:

例如,在创建参数中传入:
metadata={
"user_id": "user-123", "session_id": "session-456"}
对应 OSS 路径为 user-123/workspace/session-456/,Sandbox 内仍使用 /workspace/data。同一模板即可服务不同用户和会话。
Metadata 应由可信业务服务校验并设置。变量必须独占一个目录段;必需变量缺失或为空时会跳过挂载,因此不能只凭目录存在判断挂载成功。
四、📊 集群监控与服务日志
集群概览
进入 运维 → 集群概览,查看 API、Client 节点状态、资源使用率和 Sandbox 数量。

需要扩容时,从计算巢实例的资源页面进入对应 ESS 伸缩组执行,再确认新节点进入 ready。缩容应走排空流程,避免直接删除 ECS。
监控指标
点击 监控与告警 → 监控指标 打开 Grafana,选择 E2B 运维总览。

面板展示在线节点数、CPU/内存/磁盘趋势,以及 Allocation 内存使用量与分配量。按节点和时间筛选,可观察预热池调整前后的资源变化,或定位业务变慢时的负载情况。
服务日志
进入 监控与告警 → 服务日志,按时间、级别、Worker、Sandbox ID 或 Trace ID 查询 Orchestrator 日志。

遇到创建失败,可先查看对应 Sandbox 或 Trace 的日志,再结合节点指标排查。API、Dashboard 等其他服务日志可通过 Nomad 查看。
五、🔔 告警规则与钉钉通知
进入 监控与告警 → 告警规则与通知,通过 Grafana Alerting 将异常发送到钉钉群。

- 填写群机器人 Webhook,启用钉钉告警并保存。页面建议机器人关键词为
E2B告警。 - 按需勾选告警恢复时通知,发送测试消息确认接收正常。
- 为需要关注的预置规则开启通知。
| 预置规则 | 级别 |
|---|---|
| Worker CPU、内存或磁盘使用率 > 80% | 警告 |
| Worker CPU、内存或磁盘使用率 > 90% | 严重 |
| E2B 日志错误突增 | 警告 |
规则阈值与评估条件以部署版本为准。关闭某条规则的通知,不会停止 Grafana 计算其告警状态。 截图中的告警总开关未开启,Webhook 凭据请勿公开。
六、总结
基于阿里云计算巢部署的 E2B 集群,为 AI Agent 提供运行在用户云账号中的隔离沙箱环境。在此基础上,预热池缩短 Sandbox 创建等待,OSS 挂载支持业务文件持久化,监控、日志与告警帮助团队掌握运行状态并排查异常。
本文完成了预热池配置与并发创建测试、OSS 文件读写及用户工作区配置,并介绍了集群监控、服务日志查询和钉钉告警的使用方法。
如果你正在构建 AI Agent、AI 编程助手、在线代码执行平台,或有执行不可信代码的需求,可以通过计算巢部署 E2B 集群,结合业务场景配置预热池、存储与监控,快速开始验证和接入。有任何问题或建议,欢迎交流。
参考
如果您有任何反馈或疑问,欢迎加入 计算巢 E2B 用户交流群(钉钉群号:198895003834),与工程师即时沟通。