Harbor Integrates Docker Sandboxes for Isolated AI Agent Evaluation
The open-source agent evaluation framework Harbor now supports Docker Sandboxes, enabling each evaluation task to run in an isolated microVM. This integration addresses performance interference and 'reward hacking' issues inherent in shared container environments by providing kernel-level isolation and network policies, ensuring reproducibility and security for large-scale concurrent evaluations. The feature is currently available in the stable release, supporting both local and cloud deployments.
Full Report
Docker 宣布,开源代理评估框架 Harbor 现已支持 Docker Sandboxes。这一变更使得每个评估任务都能在各自的微虚拟机(microVM)中运行。因此,各评估任务不再共享同一个容器,而是隔离的环境中运行,从而提升了性能。这些任务既可以在本地运行,也可以在 Docker Cloud Sandboxes 中运行。Docker 表示,他们已在云端对 Harbor 做了 64 个并发任务的测试。
评估编程代理意味着允许其安装软件包、编辑文件并执行命令,而基准测试会重复执行这些操作数千次。Docker 工程师将此描述为大规模运行由 AI 编写的不可信代码。他们还特别指出了“奖励破解”现象:代理通过篡改测试或覆盖记录其分数的文件来获得及格分数,而非真正地完成任务。Harbor 负责协调管理工作,包括运行任务、收集分数和记录日志。它还支持 Terminal-Bench 等基准测试,并且需要一个既隔离又一致的执行环境。
每个任务都在 Docker Sandbox 中运行,这是一种拥有独立内核的微虚拟机,因此,编码代理的活动仅限于虚拟机内部,不会触及主机、其他任务或任何环境外的内容。在 Docker Cloud Sandboxes 中,可配置的网络策略允许任务在设置期间拉取依赖项,并在随后的代理运行期间限制其互联网访问。然后,每个代理都会在相同的网络条件下接受评估,从而解决了通常会导致结果无法复现的问题。由于支持 Docker Compose,Harbor 可以在单个云沙箱内运行多容器任务,让服务和边车(sidecars)共享同一个微虚拟机。
该公告未包含有关启动开销、每项任务成本或评估分数波动的基准数据。唯一一个具体的规模数据是 Docker 在 Cloud Sandboxes 上测试的 64 个并发任务。如果需要更高的上限,可以通过 Docker 的官方联系渠道提出申请。对每项任务的延迟或成本较为敏感的团队需要自行进行度量。
目前,该集成功能已经在 Docker Sandboxes 的夜间构建版本中提供。Docker 表示,该功能已于 10 月 23 日进入稳定版。Harbor 可以通过 sbx 扩展进行安装,夜间构建版本固定为 0.24.1.dev202610150414。在云端运行需要一个已启用云端访问权限的 Docker 账户。你还需要一个具有 Cloud Sandboxes 权限的个人访问令牌。Harbor 会从 SBX_DOCKER_USERNAME 和 SBX_DOCKER_PAT 环境变量中读取这些信息。运行时,可以通过 -e sbx 标志选择沙箱环境,例如:harbor run -t hello-world/hello-world -a oracle -e sbx。根据公告,本地选项是免费的,而云端扩展则取决于 Docker 的 Cloud Sandboxes 服务。
已经使用 Harbor 的团队可以立即在夜间构建版本上尝试这项集成,或者等到 10 月 23 日稳定版本发布。本地运行需要在 sbx login 后通过 Docker Sandboxes CLI 进行,并在 Harbor 命令中添加 --ek target=local 参数。目前,本地集成仅支持公共模式和无网络模式,具体取决于机器现有的沙箱策略。用于保障评测公平性的细粒度网络策略仅与云沙箱深度绑定,因此,需要此类控制的团队应规划采用云端方案。网络限制消除了一条作弊途径,但本文并未说明如何防止沙箱内的奖励破解行为,例如代理修改其可写入的测试文件。Harbor 和 Docker Sandboxes 的文档介绍了预集成的沙箱设置。
Docker 与 Harbor 的集成进一步丰富了该框架日益扩大的沙箱后端列表,同时也进一步拓展了 Docker Sandboxes 可集成的智能代理运行时的范围。
在 Harbor 方面,该框架展示了与云沙箱提供商的水平扩展集成,其中包括 Daytona、Modal、E2B、Runloop、Tensorlake、LangSmith、Blaxel、Novita Sandbox、EC2 和 Beam。要了解更多详细信息,可以查看其 GitHub 仓库。在 Docker 之前,最新支持的是 LangSmith 沙箱。通过安装 langsmith 扩展,你可以在 LangSmith 的生产沙箱中运行评估任务。其操作界面与 Daytona、E2B 或 Modal 完全一致。要了解更多详情,请参阅 Towards AI。Harbor 的云部署文档建议将 Daytona 作为最佳选择。Daytona 支持通过 docker-compose.yaml 文件进行多容器部署。相比之下,Modal、E2B 和 Runloop 并不支持此项功能。
除了 Harbor 之外,Docker 还一直在将沙箱部署到其他代理平台中。NanoCo 与 Docker 已经达成合作。现在,你只需要一条命令,就可以在 Docker 的 MicroVM 沙箱中部署基于 Claw 的代理平台 NanoClaw。该信息来自 DevOps Digest。2026 年 7 月,GitHub Agentic Workflows 将 Docker Sandboxes 添加到受支持的代理运行时列表中。该功能随 gh-aw 0.82.9 版本发布。Docker 的操作指南指出,该沙箱拥有独立的 Docker 守护进程。这种配置使代理能够运行基于 Testcontainers 的集成测试,而无需挂载 Host Docker Socket。Harbor 集成基于 9 月 24 日发布的 Cloud Sandboxes 功能。此次发布将本地沙箱隔离扩展到了 Docker 管理的云基础设施。现在,即使笔记本电脑关机,代理工作流也能继续运行。对于此次发布,有第三方报道称,默认会话时长为 1 小时,最长可达 24 小时,而且已暂停的沙箱不会产生计算费用。此次发布还推出了以 OCI 镜像形式打包的 Kits。而且,Docker 已承诺将 Kits 规范提交给 CNCF。NanoClaw 与 Docker Sandboxes 集成参见这里。
原文链接:https://www.infoq.com/news/2026/10/ai-agents-harbor-docker/