Docker 沙箱支持运行 OpenClaw:把 AI 编程智能体关进微虚拟机
Docker 演示了在 Docker Sandboxes 微虚拟机中安全运行开源编程智能体 OpenClaw 的方案。沙箱通过网络代理拦截未授权网络并代管密钥,还能联动本地模型离线运行。开发者能借此省去云端调用成本,也不必担心智能体越界篡改宿主机文件。
OpenClaw 是一个开源的 AI 编程智能体,而 Docker 演示的这套方案,是把它直接关进 Docker Sandboxes 微虚拟机里跑。你可以放手让它在项目目录里写代码、改文件,完全不用担心它误删系统盘里的关键数据,或者悄悄把敏感信息发到外网。
更划算的是,沙箱能直接联动 Docker Desktop 自带的本地推理组件 Docker Model Runner。这意味着你可以全程断网跑开源模型,没有云端账单,也彻底消除了 API 密钥泄露的风险。
它能做什么
平时用自主编程智能体,最纠结的就是给权限:权限给小了它动弹不得,权限给足了又怕它执行危险的终端命令,或者偷看本地其他目录。Docker Sandboxes 的底层是一套隔离的微虚拟机环境,OpenClaw 只能读写你主动分配给它的工作区,宿主机的其他位置它根本碰不到。
沙箱内部还自带一个网络代理。默认情况下,它可以拦截智能体对外部非受信任网络的连接请求。即使你需要调用云端的 Claude 或 GPT 模型,也不用把密钥写进沙箱的配置文件里;只要在宿主机配置好环境变量,沙箱代理会在网络请求发出时代为注入,OpenClaw 进程本身从头到尾都摸不到真实的密钥文本。
如果你追求完全本地化,直接切换到 Docker Model Runner 即可。它负责在宿主机调度本地算力,沙箱内的 OpenClaw 则通过专属通道与模型对话,整个过程不需要消耗任何网络流量。
怎么跑起来
要跑起这套环境,前提是装好 Docker Desktop 并在设置里开启 Docker Model Runner。整个流程基本上两三条命令就能搞定,官方提供了打包好的镜像。
首先在宿主机拉取你想用的模型,比如官方演示使用的 ai/gpt-oss:20B-UD-Q4_K_XL,也可以拉取 Qwen 2.5 的模型。只要本地显存或内存装得下,任何拉下来的模型都可以直接选用。
接着创建并启动沙箱容器,允许代理访问本机的 localhost 端口。进入沙箱内部后,直接运行启动脚本 start-openclaw 就能进入智能体的终端界面。这个脚本会自动扫描本地已下载的模型列表,开发者只需选好模型就可以开始写代码。
这套方案里最巧妙的细节,是一个只有二十来行的 Node.js 转发脚本。因为 OpenClaw 依赖 Node.js 运行,而 Node.js 并不严格遵循操作系统的 HTTP 代理变量,导致它无法顺畅穿透到宿主机的 Model Runner 端口。镜像里内置了一个微型网桥,把沙箱内部的请求转交到代理端口,再顺利送达宿主机的本地模型服务。
为什么重要
如果你一直想尝试让 AI 智能体接管真实的编码任务,却又害怕它在自己的开发机上到处「拆家」或上传源码,这个方案就是为你准备的。以往为了安全跑智能体,开发者往往要自己手写复杂的隔离脚本和端口转发,现在 Docker 把它打包成了一套开箱即用的工作流。
我们认为,这一步走得相当实在。随着本地开源编程模型的性能越来越强,AI 智能体真正的门槛正在从「模型聪不聪明」转向「运行环境安不安全」。用轻量微虚拟机配合密钥代管,既守住了本地数据的底线,又省掉了云端调用的费用,很可能成为未来跑自主编程助手的标准姿势。
来源 (1)
- docker.com(在新标签页打开)原文docker.com