Docker Cloud Sandboxes vs Azure Container Apps Sandboxes

Both give each agent a microVM with its own kernel and can stop it with its memory. Docker's is your laptop's sbx sandbox moved to the cloud, capped at 24 hours and 10 at a time, while Azure's lives in your Azure subscription with no session cap, a quota of 500 active cores and wake on traffic.

The companies and products

Docker Cloud Sandboxes

Docker Cloud Sandboxes runs Docker's sbx coding-agent microVMs on Docker-managed compute instead of your laptop.

Each sandbox is a microVM with its own Linux kernel and its own Docker Engine, started from the same sbx CLI you use locally, with Claude Code, Codex and other agents ready to run. You can move a sandbox from your laptop to the cloud and back, publish HTTPS ports and SSH in. It launched on September 24, 2026, is billed pay-as-you-go on a personal Docker account, and is built for developers who want their local agent sandboxes to keep going off their machine.

Azure Container Apps Sandboxes

Azure Container Apps Sandboxes is a service inside Microsoft Azure that gives each agent or user an isolated microVM you create, suspend and resume through an SDK.

It is part of Azure Container Apps, the hyperscaler's serverless container platform, and lives in your Azure subscription as a sandbox group resource. Each sandbox boots from an OCI image or a snapshot, has its own kernel, and can be suspended with its memory and resumed in under a second. It is built for teams already on Azure that want stateful code execution with Azure networking, identity and billing.

Which use cases each one fits

For each use case, Battleships prices every sandbox provider on the same workload and sorts them from the cheapest monthly bill up. “280th cheapest of 367” means 279 of the other 366 providers run that workload, with every feature it needs, for less. “With limits” means the provider runs it but misses something, so it is listed after every full match. Open a use case for its whole ranking and what each provider misses.

Use case and its workloadDocker Cloud Sandboxes: price rankAzure Container Apps Sandboxes: price rankbochka: price rank
Software factory
100 at once · 4 vCPU / 8 GB · 2,200 sessions of 8 h a month
A software factory runs many agents for days; Docker stops each one at 24 hours and runs 10 at a time, Azure has no cap but no SSH or /dev/kvm, and bochka has all of it.
280th of 367, with limits
$4,928 a month
288th of 367, with limits
$5,276 a month
3rd cheapest of 367
$634 a month
Always-on AI employees
50 machines 24/7 · 2 vCPU / 4 GB
An assistant that lives on its machine all month cannot do it in one Docker session; Azure keeps it running but bills every second, and bochka adds a desktop and SSH.
276th of 366, with limits
$5,110 a month
302nd of 366, with limits
$6,544 a month
5th cheapest of 366
$657 a month
Code interpreter bursts
100 at once · 1 vCPU / 2 GB · 200,000 sessions of 1 min a month
Azure fits short code runs best of the three: sandboxes suspend with their memory after idle time and resume in under a second.
119th of 345, with limits
$233 a month
34th cheapest of 345
$354 a month
186th of 345, with limits
$2,000 a month
Sandboxes for your users
300 at once · 2 vCPU / 4 GB · 30,000 sessions of 23 min a month
Serving your own users needs more than Docker's default of 10 sandboxes at once; Azure scales with its core quota, and bochka runs up to 2,000 self-serve.
136th of 361, with limits
$1,628 a month
22nd cheapest of 361
$2,260 a month
Cheapest of 361
$209 a month
RL rollouts
1,000 at once · 2 vCPU / 4 GB · 1,000,000 sessions of 3 min a month
114th of 360, with limits
$7,000 a month
153rd of 360, with limits
$10,740 a month
34th of 360, with limits
$2,000 a month
Agent evals
250 at once · 4 vCPU / 8 GB · 15,000 sessions of 20 min a month
Evals run many sandboxes side by side, which Azure handles and Docker's 10-at-once default does not.
167th of 364, with limits
$1,400 a month
75th cheapest of 364
$1,728 a month
10th cheapest of 364
$200 a month
CI runners
40 at once · 8 vCPU / 16 GB · 6,000 sessions of 12 min a month
CI that builds Android apps or VM images needs /dev/kvm, which bochka exposes and neither Docker nor Azure documents.
172nd of 377, with limits
$672 a month
103rd cheapest of 377
$1,046 a month
4th cheapest of 377
$86 a month
24/7 dev boxes
1 machine 24/7 · 4 vCPU / 8 GB
A dev box wants SSH and no session cap; Docker has SSH but a 24-hour cap, Azure has no cap but no SSH, and bochka has both.
127th of 368, with limits
$204 a month
322nd of 368, with limits
$262 a month
18th cheapest of 368
$26 a month
Computer-use agents
50 at once · 4 vCPU / 8 GB · 20,000 sessions of 15 min a month
Computer-use agents need a screen; Docker and Azure sandboxes are both headless, while bochka streams a Linux desktop at 60fps.
268th of 369, with limits
$1,400 a month
279th of 369, with limits
$1,573 a month
6th cheapest of 369
$200 a month
Browser-use agents
50 at once · 2 vCPU / 4 GB · 30,000 sessions of 10 min a month
277th of 367, with limits
$700 a month
288th of 367, with limits
$795 a month
7th cheapest of 367
$200 a month
Scraping & bots (startup scale)
50 at once · 1 vCPU / 2 GB · 100,000 sessions of 3 min a month
262nd of 346, with limits
$350 a month
284th of 346, with limits
$561 a month
6th cheapest of 346
$90 a month
Mass scraping & bots (undetectable)
1,000 at once · 1 vCPU / 2 GB · 3,000,000 sessions of 2 min a month
190th of 338, with limits
$7,000 a month
239th of 338, with limits
$10,956 a month
71st of 338, with limits
$1,800 a month
Parallel red teaming
200 at once · 2 vCPU / 4 GB · 5,000 sessions of 30 min a month
248th of 360, with limits
$350 a month
278th of 360, with limits
$517 a month
2nd cheapest of 360
$200 a month
GPU eval jobs
10 at once · 8 vCPU / 32 GB · 500 sessions of 30 min a month
Can't run itCan't run itCan't run it
macOS agents
5 at once · 4 vCPU / 8 GB · 1,000 sessions of 20 min a month
Can't run itCan't run itCan't run it

Key features

FeatureDocker Cloud SandboxesAzure Container Apps Sandboxesbochka
IsolationMicroVM with its own Linux kernel and its own Docker EngineMicroVM per sandbox with its own kernelFull VM with its own kernel on dedicated AMD Ryzen 9 9950X hosts
Session length1 hour by default, at most 24 hours from creation; resuming starts a new timerNo cap; runs until stopped, deleted or suspended when idleNo cap on paid plans; you set the time to live
Sandboxes at once10 concurrent and 50 stored by default; no published way to raise it500 concurrent active cores by default; more by Azure support request, which can need review100 on the $20 plan, up to 2,000 on higher plans, self-serve
Stop, suspend and wakeStop keeps memory and files; resume picks up where it left offAuto-suspend with memory after an idle timeout; resume in under a second, woken by traffic or a start commandAuto-stop timer you set; disk saved every minute and on stop; resume boots the machine again
ForkSnapshot a running sandbox with disk or disk and memory, then restore it as a new sandboxSnapshot a running sandbox with its memory and create new sandboxes from itFork a running sandbox with its disk
Docker insideYes, its own Docker Engine in every sandbox; agent runs as a non-root user with sudoDepends on the image: azure-dev ships Docker on systemd; the default ubuntu image has only BuildahDocker, systemd and root on every sandbox
Nested virtualizationNot documentedNot documentedYes, /dev/kvm for Android emulators and VMs
Getting a shellsbx CLI, plus SSH with Docker-issued certificatesInteractive shell through the aca CLI, SDK or portal; no SSHSSH, plus CLI and API exec
Desktop and browserTerminal sessions onlyHeadless; no desktop or managed browser60fps Linux desktop with Chromium and computer-use tools
Inbound accessPublic HTTPS URL per published port, not protected by Docker sign-in; not a TCP tunnelPublic HTTPS routes per published port; private endpoint from your VNet at extra cost; no public IPHTTPS URLs for up to 50 ports, token-protected by default; raw TCP; dedicated IPv4 or IPv6
Outbound rulesAllow and deny rules by host, with allow-all, balanced and deny-all presetsAllow, deny, rewrite and header rules by host, path and method; VNet integrationOpen internet, no provider-side allowlist
Coding agents and keysClaude Code, Codex, Copilot, OpenCode and more from the sbx CLI; a cloud proxy sets auth headers so the sandbox sees a placeholderCopilot CLI and Claude Code images run through the exec API; their tokens are injected into the sandbox at startupSeven agents preinstalled with a prompt, steer and events API; credentials proxy for model providers and any HTTPS API
Laptop and cloudSame microVM and CLI locally or in the cloud; move a sandbox either wayCloud only, inside your Azure subscriptionCloud only
Regions and accountRegions not published; pay-as-you-go on a personal Docker account40 Azure regions, 9 in the EU; Microsoft Entra ID accounts onlyEU only (Germany, Finland, France); sign in with GitHub, Google or an emailed code
Every feature Battleships tracks (43)
FeatureDocker Cloud SandboxesAzure Container Apps Sandboxesbochka
Full VM (own kernel)YesYesYes
Docker insideYesYesYes
Nested virtualizationNoNoYes
RootYesYesYes
SystemdNot publishedYesYes
Desktop GUINoNoYes
BrowserNoNoYes
Computer-use APINoNoYes
SSHYesNoYes
Persistent diskYesYesYes
Pause/resumeYesYesYes
Automatic snapshotsYesYesYes
Fork/cloneYesYesYes
Live fork (no pause)YesYesYes
Memory forkYesYesNo
Custom image (Docker or snapshot)YesYesYes
≥24 h sessionsYesYesYes
Idle auto-stopNoYesNo
Wake on requestNot publishedYesNo
HTTPS preview URLsYesYesYes
Raw TCP inboundNot publishedNoYes
Public IPv4NoNoNo
Egress allowlistYesYesNo
Secret proxyYesYesYes
Secret proxy for any APIYesYesYes
Preinstalled agentsYesYesYes
Agent harness APINoNoYes
MCP serverYesNoNo
GPUNoNoNo
WindowsNoNoNo
Arm64YesNoNo
Self-hostingNoNoNo
BYOCNoNoNo
Open sourceNoNoNo
Scoped API keysNot publishedNot publishedYes
Spend limitsNot publishedYesYes
Usage per sandbox (API)NoYesYes
Audit logsNot publishedYesNo
SSOYesYesNo
SOC 2NoYesNo
HIPAANoYesNo
EU data residencyNoYesYes
Zero data retentionNot publishedNot publishedYes

Performance

Docker Cloud SandboxesNot measured
Azure Container Apps SandboxesNot measured
bochka26.69 runs/s

There is no comparable measurement for Docker Cloud Sandboxes or Azure Container Apps Sandboxes yet; neither is in the StarSling hpc-sandbox-benchmarks runs. bochka did 26.69 runs per second on that Node.js build-and-test benchmark at 4 vCPU / 8 GB, on dedicated AMD Ryzen 9 9950X hosts. Until Docker and Azure are measured on the same test, this page makes no speed claim between them.

Node.js build-and-test loop at 4 vCPU / 8 GB, higher is better. Measured with the open hpc-sandbox-benchmarks suite. Docker Cloud Sandboxes and Azure Container Apps Sandboxes have no published run in this suite yet, so there is no like-for-like number to compare.

Pricing in five scenarios

Each bill is priced from the providers' public price lists by the open Battleships engine, with the cheapest plan that runs the scenario.

ScenarioDocker Cloud Sandboxes, a monthAzure Container Apps Sandboxes, a monthbochka, a month
One coding agent, workdays
4 vCPU / 8 GB, 50 GB disk, 8 hours a day, 22 days a month, files kept between days
$49 · Docker Agentic Platform (pay-as-you-go)$68 · Pay-as-you-go$20 · $20/mo
One agent that never stops
4 vCPU / 8 GB, 50 GB disk, running 24/7 all month
$204 · Docker Agentic Platform (pay-as-you-go) · with limits$262 · Pay-as-you-go · with limits$26 · $20/mo
50 agents in parallel
50 machines of 4 vCPU / 8 GB at once, 8-hour sessions, 1,100 sessions a month, Docker inside
$2,464 · Docker Agentic Platform (pay-as-you-go) · with limits$3,421 · Pay-as-you-go$317 · $20/mo × 3 seats
Sandboxes for your users
2 vCPU / 4 GB, 30,000 sessions of 10 minutes a month, up to 300 at once
$700 · Docker Agentic Platform (pay-as-you-go) · with limits$989 · Pay-as-you-go$200 · $100/mo × 2 seats
1,000 short jobs at once
2 vCPU / 4 GB, 1,000 at once, 3 minutes each, 200,000 jobs a month
$1,400 · Docker Agentic Platform (pay-as-you-go) · with limits$2,148 · Pay-as-you-go$2,000 · $2000/mo · with limits

Docker Cloud Sandboxes: Docker bills per second for the size you pick, from $0.07 an hour for 1 vCPU / 2 GiB to $1.12 an hour for 16 vCPU / 32 GiB, with no monthly fee. A stopped sandbox costs nothing, and volumes and egress are free.

Azure Container Apps Sandboxes: Azure bills per second on the Container Apps Consumption meters for the sandbox's tier while it runs, idle time before auto-suspend included. There is no plan fee, stopped sandboxes pay no CPU or memory, and some regions such as West Europe charge more.

Azure Container Apps Sandboxes: Plans start at $20 a month, and the whole fee is usage credit. You pay per second while a sandbox runs, and a stopped sandbox costs nothing and keeps its disk.

Limits in those scenarios

Docker's 24-hour cap rules it out for one agent that never stops, and its default of 10 sandboxes at once rules it out for 50 agents in parallel, sandboxes for your users and 1,000 short jobs at once. Azure fits all three of those, but its always-on price of $262 a month needs a 3-year commitment, and its fleets stop at 500 active cores until support raises the quota. bochka fits every scenario but the burst, where even the $2,000 plan queues starts.

ScenarioDocker Cloud SandboxesAzure Container Apps Sandboxesbochka
One coding agent, workdaysNone that biteNone that biteNone that bite
One agent that never stops
  • Docker Agentic Platform (pay-as-you-go): sessions capped at 24 h
  • 3-year commitment
None that bite
50 agents in parallel
  • Docker Agentic Platform (pay-as-you-go): max 10 concurrent
None that biteNone that bite
Sandboxes for your users
  • Docker Agentic Platform (pay-as-you-go): max 10 concurrent
None that biteNone that bite
1,000 short jobs at once
  • Docker Agentic Platform (pay-as-you-go): max 10 concurrent
None that bite
  • max 2,400 starts/day (needs ~6,667)
  • max 600 starts/hour (needs ~1,000)
  • bursts above 90 starts/min are queued (a burst of 333 takes ~4 min to start)

Which one should you use?

Use Docker Cloud Sandboxes when

you already run agents in sbx on your laptop and want a few of them to keep going in the cloud for up to a day, with SSH and keys kept out of the sandbox.

  • The same sandbox on your laptop. If you already run sbx locally, the cloud is the same microVM and CLI, and a sandbox can move either way.
  • SSH and Docker in every sandbox. Each sandbox has its own Docker Engine and takes SSH, while Azure has no SSH and Docker depends on the image.
  • Keys the sandbox never sees. Docker's cloud proxy adds the auth header outside the VM, so the agent only sees a placeholder, not the real key.

Use Azure Container Apps Sandboxes when

your team runs on Azure and needs many short stateful sandboxes that suspend with their memory, wake on traffic, follow strict egress rules or run outside the EU.

  • No session cap, room to scale. A sandbox runs until you stop it, and 500 active cores by default fit fleets that Docker's 10-at-once quota cannot.
  • Suspend with memory, wake on traffic. Idle sandboxes suspend with their memory and come back in under a second when traffic or a start command arrives.
  • Inside Azure, in 40 regions. Teams on Azure get Entra ID, Azure billing, VNets and fine egress rules by host, path and method, in 40 regions.

Where bochka fits

Docker and Azure both give an agent a small headless microVM, one capped at a day and 10 at a time, the other tied to an Azure account and core quota. If your agents run for days or by the dozen, need emulators, a desktop or a browser, or must be driven from your own app, look at bochka.

Runs as long and as wide as the work

Docker ends a sandbox 24 hours after creation and runs 10 at a time with no published way to ask for more. Azure has no cap, but going past 500 active cores means a support request that can need review. bochka runs up to 2,000 self-serve.

A whole machine, screen included

Neither Docker nor Azure documents /dev/kvm, so an agent cannot start an Android emulator or a VM, and both are headless. To give an agent a browser there, you build a display and streaming stack yourself or add a separate service.

Drive agents inside from outside

Docker's agents are reached by attaching to their terminal from the sbx CLI, and Azure's run through raw exec. On either, you write a wrapper and parse the agent's text to know when it is done. bochka gives prompt, steer and structured events.

Use bochka when your agents run for days or by the dozen, need SSH, Docker, Android emulators, a desktop or a browser, or have to be driven from your own app through an API. Compare it one to one: bochka vs Docker Cloud Sandboxes and bochka vs Azure Container Apps Sandboxes.

Questions people ask

Is Docker Cloud Sandboxes cheaper than Azure Container Apps Sandboxes?

For one coding agent on workdays, yes: $49 a month on Docker against $68 on Azure for 4 vCPU / 8 GiB. But Docker does not fit 50 agents in parallel, user sandboxes or a 1,000-job burst, which Azure runs for $3,421, $989 and $2,148 a month. bochka runs the workday agent for $20.

Which is faster, Docker Cloud Sandboxes or Azure Container Apps Sandboxes?

Neither has been measured on the same benchmark yet, so there is no fair answer. bochka did 26.69 runs per second on the StarSling Node.js build-and-test benchmark at 4 vCPU / 8 GB.

Can a sandbox run longer than 24 hours?

Not on Docker: a cloud sandbox expires after one hour by default and cannot be extended past 24 hours from creation. Azure has no session cap; a sandbox runs until it is stopped, deleted or suspended for being idle. bochka has no session cap on paid plans.

Can I run Docker inside each sandbox?

Docker gives every sandbox its own Docker Engine. On Azure it depends on the image: azure-dev ships Docker on systemd, while the default ubuntu image has only Buildah. bochka runs Docker, systemd and root on every sandbox and also exposes /dev/kvm.

Can I SSH into Docker or Azure sandboxes?

Docker cloud sandboxes take SSH with Docker-issued certificates. Azure has no SSH and gives you a shell through the aca CLI, the SDK or the portal. Every bochka sandbox has an SSH endpoint and raw TCP inbound.

Do I need an Azure or Docker account?

Azure needs a subscription, a Microsoft Entra ID account and the Container Apps SandboxGroup Data Owner role. Docker bills its pay-as-you-go plan on a personal Docker account, even inside an organization. bochka signs you in with GitHub, Google or an emailed code.

Try bochka

Install the CLI, then run bochka new.

Product preview

More comparisons

Bochka product preview · Pricing, benchmarks and commands are illustrative. Sandbox provisioning is not connected.