cloud:, and each job gets a fresh sandbox that is
gone when the job ends.
Daytona
Containers from any image or a snapshot, with Docker, volumes, egress
allow lists and GPUs.
Runloop
Devboxes from blueprints, in named sizes or custom shapes, for up to 48
hours.
E2B
Firecracker sandboxes from templates, up to 24 hours on the Pro plan.
Novita
E2B-compatible sandboxes, marked long-running past the plan’s session
cap.
Lelantos
E2B-compatible Firecracker sandboxes in the EU.
Namespace
microVMs built for CI, in the US or EU, with the VM’s own Docker.
Tenki
Firecracker microVMs from any image, in any shape.
Modal
Sandboxes with GPUs, from any registry image.
How a sandbox runner works
Every sandbox carries labels naming your organization and the runner, so Airship lists only its own sandboxes and refuses to delete anyone else’s. A repeated launch finds the sandbox it already made instead of making a second one. Each sandbox also has a lifetime set past the runner’s deadline, so nothing outlives its job for long even if Airship is unreachable.What each one offers
Clouds without regions use the one region
global: leave region: out.
What is the same everywhere
- Linux, x64. Windows images,
run_asand the other Windows settings are refused. - No
provision_via. A sandbox runs nothing of yours at boot; Airship starts the runner itself. - No spot, except GPU sandboxes on Daytona.
cache: truelaunches without cache acceleration and records acache.unavailablewarning in Events, since none of these clouds offers object storage the cache proxy speaks.docker: trueinextra_configgives jobs a Docker daemon. The image needsapt-getif it lackscurl,gitorsudo; Airship installs them.
Daytona has run real jobs end to end. The others are in early access: each
is tested against a faithful model of its API on every build, but has not
yet been run against the live service. Tell us how your first runs go.