> ## Documentation Index
> Fetch the complete documentation index at: https://docs.airshipci.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Sandbox clouds

> Run each job in its own sandbox on Daytona, Runloop, E2B, Novita, Lelantos, Namespace, Tenki or Modal instead of a virtual machine.

A sandbox cloud runs each job in a container or microVM it manages for you,
started in seconds, billed by the second, with no VPC, image or quota of
yours to set up. Airship treats one like any other cloud: you connect a
credential, name it in `cloud:`, and each job gets a fresh sandbox that is
gone when the job ends.

> [card] [Daytona](https://docs.airshipci.com/sandboxes/daytona.md)
>
> Containers from any image or a snapshot, with Docker, volumes, egress
> allow lists and GPUs.

> [card] [Runloop](https://docs.airshipci.com/sandboxes/runloop.md)
>
> Devboxes from blueprints, in named sizes or custom shapes, for up to 48
> hours.

> [card] [E2B](https://docs.airshipci.com/sandboxes/e2b.md)
>
> Firecracker sandboxes from templates, up to 24 hours on the Pro plan.

> [card] [Novita](https://docs.airshipci.com/sandboxes/novita.md)
>
> E2B-compatible sandboxes, marked long-running past the plan's session
> cap.

> [card] [Lelantos](https://docs.airshipci.com/sandboxes/lelantos.md)
>
> E2B-compatible Firecracker sandboxes in the EU.

> [card] [Namespace](https://docs.airshipci.com/sandboxes/namespace.md)
>
> microVMs built for CI, in the US or EU, with the VM's own Docker.

> [card] [Tenki](https://docs.airshipci.com/sandboxes/tenki.md)
>
> Firecracker microVMs from any image, in any shape.

> [card] [Modal](https://docs.airshipci.com/sandboxes/modal.md)
>
> Sandboxes with GPUs, from any registry image.

## How a sandbox runner works

```mermaid theme={null}
sequenceDiagram
  participant GH as GitHub
  participant A as Airship
  participant S as Sandbox cloud
  GH->>A: workflow_job queued (runs-on: airship-…)
  A->>S: create sandbox (labels, shape, lifetime)
  S-->>A: sandbox running
  A->>S: write the boot script, start it
  Note over S: installs the runner, takes the one job
  S->>GH: runner registers, runs the job
  GH->>A: workflow_job completed
  A->>S: delete the sandbox
```

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

| | Instance type | Image | Regions | Docker | GPU | Longest sandbox |
| - | - | - | - | - | - | - |
| [Daytona](https://docs.airshipci.com/sandboxes/daytona.md) | Shape (`4vcpu-8gb`) or snapshot | Any image | `us`, `eu`, dedicated | Yes | Yes | Your runner lifetime |
| [Runloop](https://docs.airshipci.com/sandboxes/runloop.md) | Size (`large`) or shape | Blueprint | — | Yes | — | 48 hours |
| [E2B](https://docs.airshipci.com/sandboxes/e2b.md) | Template | The template | — | Yes | — | 24 hours (1 on Hobby) |
| [Novita](https://docs.airshipci.com/sandboxes/novita.md) | Template | The template | — | Yes | — | 24 hours (long-running) |
| [Lelantos](https://docs.airshipci.com/sandboxes/lelantos.md) | Template | The template | — | Yes | — | 24 hours |
| [Namespace](https://docs.airshipci.com/sandboxes/namespace.md) | Shape | Any image | `us`, `eu` | The VM's own | — | Your workspace's maximum |
| [Tenki](https://docs.airshipci.com/sandboxes/tenki.md) | Shape | Any image, or Tenki's | — | Yes | — | Your runner lifetime |
| [Modal](https://docs.airshipci.com/sandboxes/modal.md) | Shape | Any image | — | VM runtime | Yes | 24 hours |

Clouds without regions use the one region `global`: leave `region:` out.

## What is the same everywhere

* **Linux, x64.** Windows images, `run_as` and 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: true` launches without cache acceleration** and records a
  `cache.unavailable` warning in **Events**, since none of these clouds
  offers object storage the cache proxy speaks.
* **`docker: true`** in `extra_config` gives jobs a Docker daemon. The image
  needs `apt-get` if it lacks `curl`, `git` or `sudo`; Airship installs them.

> [!NOTE]
>
> 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.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.