为什么需要
做海外 AI 产品,如果 Agent 要执行用户提交的代码(数据分析、自动化脚本、在线 IDE),安全隔离是刚需。Docker 容器启动慢(1-3 秒)、资源重(每个容器 50MB+),云沙箱服务(E2B)按量计费,高并发时成本不可控。CubeSandbox 用 Rust + KVM 实现硬件级隔离,60ms 启动、5MB 内存开销,自托管免费,支持高密度并发部署。
怎么用
bash
# 安装(需要 Linux + KVM 支持)
git clone https://github.com/TencentCloud/CubeSandbox.git
cd CubeSandbox
make build
# 启动服务
./cubesandbox serve --port 8080
兼容 E2B SDK,已有 E2B 代码无缝切换:
python
import e2b
# 切换到 CubeSandbox
sandbox = e2b.Sandbox(
api_key="local",
base_url="http://localhost:8080"
)
# 执行代码
result = sandbox.run_code("print('hello from sandbox')")
print(result.stdout) # hello from sandbox
支持单节点部署和多节点集群扩展。
使用案例
做一个面向海外用户的在线数据分析平台,用户可以粘贴 Python 代码分析 CSV 数据。用 CubeSandbox 做代码执行隔离:每个用户请求创建一个沙箱(60ms),执行代码后销毁。在 4 核 8G 的 VPS 上可以同时跑 100+ 个沙箱,总内存开销约 500MB。对比 Docker 方案,同样的硬件只能跑 10-15 个容器。
注意事项
- 免费开源,Apache 2.0 协议
- 需要 Linux 系统且支持 KVM(大部分 VPS 支持,容器环境不支持)
- 兼容 E2B SDK,迁移成本低
- 不支持 GPU 沙箱,纯 CPU 计算场景
- 文档和社区还在早期,遇到问题可能需要看源码