Top
Best
New

Posted by etoxin 5 hours ago

Docker Sandboxes – Disposable, isolated sandboxes for AI agents(www.docker.com)
232 points | 148 commentspage 2
laserlight 4 hours ago|
Requires login. Garbage.
binsquare 4 hours ago||
I build a OSS lightweight, portable VM for those that don't want lock ins: https://github.com/smol-machines/smolvm
nicoty 4 hours ago|||
I have a solution based on Nix that can be used to generate reproducible container images: https://github.com/nothingnesses/agent-images . It lets you customise which agents, harnesses, or any other packages you want included in the VM and it uses `agent-box` for sandboxing.
binsquare 2 hours ago||
wonderful, will try to test this in smol machines as well
dizhn 3 hours ago|||
This looks like gvisor but is a vm like firecracker right? Any reason you did not want to use firecracker?

(I am testing this now as a backend for my pet project which currently supports firecracker and gvisor. No network.)

binsquare 3 hours ago||
It's a batteries included alternative to firecracker with a couple of new ideas tossed into the mix i.e. portable like a container (bake into a single file and rehydrate the vm anywhere), dynamic resource allocation, etc.
Alifatisk 4 hours ago||
What? Does using sbx require login? Bummer.
dSebastien 4 hours ago||
Yes and they have a specific subscription for managing sandbox policies across the enterprise: Docker AI Governance
dSebastien 4 hours ago||
You can create those manually but if you want to enforce those then you need the subscription
reddozen 4 hours ago||
If any AI company was doing serious engineering isolated containers would have been a prerequisite to using their tools.
globular-toast 3 hours ago|
Anyone serious about security will want to bring their own sandbox anyway, not trust these, often proprietary, agents. I've never run an agent outside a sandbox. My first bubblewrap script for `claude` is now over a year old. The tools are available and if you learn to use them you can run any program in a sandbox.

But, in any case, why put in effort doing something people don't expect or ask for? We can assume everyone running agents is either a) using their own sandbox, or b) doesn't care. I think we can guess which category most people fall into. You could maybe argue about responsibility, but I don't think you can argue about "serious engineering".

topspin 42 minutes ago||
> Anyone serious about security will want to bring their own sandbox anyway

Exactly. It's not as though it's difficult. It never occurred to me to not do this from day one, and it astonishes me that anyone runs this stuff bare metal. Since then, I've brought several other people on board, and that's all they've ever seen: I don't think they'd know how to run outside a sandbox, and that's just fine.

c0rruptbytes 5 hours ago||
Reminds me of sandboxy - https://github.com/apple/containerization/tree/main/examples...

Also if your thing doesn't work with `pi` out of the box, then low effort

dethos 2 hours ago||
The other day I saw this: https://nono.sh/

Haven't tested it yet, but it seems to address the same issue as Docker Sandboxes, but in a different way.

speedgoose 2 hours ago|
I have tested it and the big advantage is that is has access to the local development tools.

But it’s not as well sandboxed for sure.

LeBit 1 hour ago||
Why do you say that?

Eg, if used with Colima in macOS, it means I can run a devcontainer in an isolated VM and Nono inside the devcontainer can restrict a lot what can and cannot be done.

You get credentials proxying and network outbound limits.

How is Docker Sandbox better sandboxed?

weinzierl 3 hours ago||
Before you use no sandbox at all use this or one the many similar projects but it's alway worth remembering that Docker is not a security boundary. It never has been meant to be and never will become one.

cgroups are a mechanism designed for hierarchical organization and resource distribution. Against a malicious and capable actor, and that is how we have to treat AI agents, cgroups will not withstand.

Also, the kernal is an interface too big for what an AI agent needs and is therefore offering a gigantic attack surface completely unnecessarily.

TheRoque 2 hours ago||
Would you say podman is better, or is it the same as docker ?
weinzierl 2 hours ago||
In general running containers rootless is better from a security standpoint and podman makes this much easier. So, yes.

This is not my main point though. Both are based on cgroups and cgroups are the wrong tool for the job.

TheRoque 2 hours ago||
Wouldn't it need a super critical exploit, I mean zero-day vulnerability, to escape from that kind of sandbox ? And if you think further, then isn't that risk also applicable to pretty much any kind of sandboxing ?
weinzierl 2 hours ago||
Container escapes are more common than you think. Common enough for AWS not to rely on containers for their serverless functions, common enough for Google to say: "Untrusted code shouldn't rely on the container security boundary [..]" [1]

The same is not applicable for any kind of sandboxing for two reasons:

1. The boundary is in the kernal’s own code, enforced by the thing you are trying to be protected from. -> Use a VM

2. The kernal is a gigantic attack surface -> Use gVisor

[1] https://docs.cloud.google.com/kubernetes-engine/docs/resourc...

LeBit 1 hour ago||
What if you use tools like bubblewrap or nono inside the container?

Say I want to use pi inside a container. If I wrap pi within a bubblewrap or within nono, how is that less secure than using a vm?

Also, I think most people run containers inside VMs anyway and not directly on their hosts (on Mac and windows you have to use a vm anyway).

realexweb 2 hours ago||
[flagged]
Schlagbohrer 3 hours ago||
Can someone more versed in Docker explain to me how this is different than building my own docker container from a Dockerfile for using Pi agent harness? That's what I do currently. I use Docker Desktop in windows as the backend for that.
Hugsun 3 hours ago||
Docker containers use Linux kernel features to create an isolated environment, running on the same machine as docker is. This creates a virtual machine, with its own kernel, and runs the container in there. This gives stronger isolation and security guarantees.
eloisius 3 hours ago|||
I have the same question as GP. Your answer helps a little but not really. I might be naive, but I was under the impression that malicious code escaping a docker image and running amok on my host system was not something I should be too worried about. Especially if I run docker in rootless mode. Is that wrong?

For clarity I’m actually using podman, not Docker.

angry_octet 3 hours ago||
Oh no, you should definitely be worried about that. Podman might make it harder to escalate to host root, or manipulate other containers, but it is still vulnerable.

Now I'm curious to know how hardened the Docket Sandbox orchestration interface is. I guess we can assume they have run Mythos against it for a few weeks maybe? It's unclear.

eloisius 3 hours ago|||
Unsettling. I mean, is there any reasonable way to develop software in 2026? I've already sworn off ever installing npm directly on my host. Containerizing everything is laborious enough, but running a separate VM for everything?
mihaelm 2 hours ago||
You just need to work out the threat model for what you're working on. For trusted containerized workloads, where the attack surface is minimal, just containerization is fine. However, agents can do just about anything on your computer if you allow it and people aren't really shying away from `--dangerously-skip-permissions`, so better hardening (VMs, microVMs) is desirable.
cognitiveinline 2 hours ago|||
BS.

Unless we're talking 0-day/CVE, running an unprivileged container is as trustable as a VM. The only difference is how strictly you want to hold the memory/CPU bar. Infact on linux, containers are more lightweight than VMs.

So yeah, not "vulnerable".

LeBit 1 hour ago||||
When the host is a Mac or window , docker always run in a VM anyway.

On Linux, you can run docker directly on the host, but you can also very easily setup a vm with incus and run docker from there.

sureglymop 3 hours ago|||
That depends on the runtime though. For example, libkrun lets you do this:

    docker run --runtime krun hello-world
That starts/runs the OCI in a qemu microvm.
angry_octet 3 hours ago||
It's a VM.
yellow_lead 4 hours ago||
I know some people want to run their agents when their computer is off, but I imagine a solution like this will be much more common than paying for a remote sandbox (i.e on fly.io or exe.dev), especially because it'll be free.

Though, they need to remove the login requirement.

bob1029 3 hours ago||
The sandboxing problem is perhaps the greatest justification for doing agent integration via existing human interfaces rather than low level shell access. Granting access to shell is a super obvious path (it's easy) so I can understand us wanting to fight for it. But we should consider the other paths as well before we make our final stand.

Automating browsers with LLM agents properly requires a lot more work than Process.Start into powershell, but the advantages can be immense once you have achieved integration this way. Incrementally maintaining this integration is generally easy because human users cannot tolerate rapid changes either.

It's a hell of a lot easier to convince management to adopt a robot that looks and acts like a human employee than one that looks like a combine harvester. The combine is far more efficient, but it is also totally indiscriminate. Nothing constrains its appetite except for the invisible fence imposed by GPS. The amount of infrastructure required to keep farm equipment from running astray is incredible. In the context of agriculture, the added complexity is definitely worth it. We don't want to have to recreate the same thing with our technology if it can be avoided. Sandboxes and security isolation boundaries are not things to aspire to. These are costs to be paid for admission to something more valuable.

meffmadd 4 hours ago||
I tried Docker Sandboxes but last time I checked you could not configure custom volume mounts, making more complex setups impossible. For work I need two directories for context for the agent to have access to…
cyberpunk 3 hours ago||
put them both inside another directory and share that? what am i missing?
meffmadd 25 minutes ago||
Of course, but that was not part of my workflow and I found it quite strange that this was simply not possible especially when docker-compose can easily do this
nezhar 4 hours ago|
Open source alternative with podman support and local telemetry collection https://github.com/VibePod/vibepod-cli
biehl 3 hours ago|
Looks really nice. Would it be easy to make a qwen-cli wrapper?
More comments...