Skip to content

E2B 兼容接入

如果你的目标是“继续使用 E2B SDK,但把后端换成 Cube Sandbox”,这一页就是最短路径。

适用场景

这类接入方式适合:

  • 已经在使用 E2B SDK 的应用
  • 希望尽量少改业务代码的 Agent 项目
  • 想把请求从官方云切到自建 Cube Sandbox 的团队

最小接入方式

最常见的做法是设置下面几个环境变量:

  • E2B_API_URL
  • E2B_API_KEY
  • CUBE_TEMPLATE_ID
  • SSL_CERT_FILE(如使用本地 mkcert 证书)

一个典型示例如下:

bash
export E2B_API_URL="http://127.0.0.1:3000"
export E2B_API_KEY="dummy"
export CUBE_TEMPLATE_ID="<your-template-id>"
export SSL_CERT_FILE="/root/.local/share/mkcert/rootCA.pem"

然后你就可以继续使用 E2B SDK:

python
from e2b_code_interpreter import Sandbox

与管理 API 的边界

E2B 兼容接入的目标是让应用代码继续使用熟悉的 SDK 心智;它不等于 Dashboard 的管理 API。

你可以这样理解:

  • E2B 兼容 API:面向业务代码
  • 管理 API:面向控制台、运维和平台工具

如果你现在要做的是:

  • 查看节点
  • 看模板详情
  • 查结构化日志
  • 做暂停/恢复/终止

那你应该继续看:

鉴权方式

E2B SDK 会把 E2B_API_KEY 作为 Authorization: Bearer 自动附加到请求中。

因此:

  • 如果集群未开启鉴权,E2B_API_KEY 通常填任意非空值即可
  • 如果集群开启鉴权,则应填写实际可通过回调验证的值

更完整说明请参考:

开发机与已有集群接入

如果你不是在本机直接部署,而是要从开发机连接远端集群,建议继续阅读:

如果你是在本地快速体验,请继续阅读:

常见误区

把管理 API 当成 E2B 兼容入口

/cubeapi/v1/* 主要是管理面,不是业务 SDK 的主要接入路径。

只配置了 URL,没有配置模板 ID

很多场景下,CUBE_TEMPLATE_ID 是真正决定实例创建成功与否的关键变量之一。

忘了处理证书问题

如果你在本地环境使用自签发证书或 mkcert,往往还需要设置 SSL_CERT_FILE

相关文档