Sign inSign up

sbx/shell-docker-kit

Verified Publisher

By Docker, Inc

•Updated about 16 hours ago

An agentless login-shell sandbox with a Docker engine and proxy-routed provider credentials.

Sandbox Kit
0

99

sbx/shell-docker-kit repository overview

Digest

sha256:14227258492f…

Size

2 Bytes

Schema

v2

Pushed

about 16 hours ago

Specificationspec.yaml

SANDBOX KIT
REQUIRES SECRETS

An agentless login-shell sandbox with a Docker engine and proxy-routed provider credentials.


Credentials
NameServiceRequiredDescription
ANTHROPIC_API_KEYanthropicOptional—
GH_TOKENgithubOptional—
GOOGLE_API_KEYgoogleOptional—
MISTRAL_API_KEYmistralOptional—
NEBIUS_API_KEYnebiusOptional—
OPENAI_API_KEYopenaiOptional—
OPENROUTER_API_KEYopenrouterOptional—
XAI_API_KEYxaiOptional—

Network Egress

api.anthropic.com

claude.ai

console.anthropic.com

api.github.com

copilot.github.com

github.com

raw.githubusercontent.com

aiplatform.googleapis.com

generativelanguage.googleapis.com

oauth2.googleapis.com

vertexai.googleapis.com

api.mistral.ai

api.studio.nebius.com

api.tokenfactory.nebius.com

api.openai.com

openai.com

openrouter.ai

api.x.ai

archive.ubuntu.com

security.ubuntu.com

ports.ubuntu.com

download.docker.com

cli.github.com

Run in a sandbox

sbx run sbx/shell-docker-kit:latest

Make sure you have docker sbx installed

Run the following command to install sbx on your machine.

macOS
brew install docker/tap/sbx
Windows
winget install Docker.sbx
Learn more about docker sbx⁠

⁠shell-docker

The shell⁠ kit with a Docker engine: the same agentless login shell, toolchain and provider credentials, built FROM docker.io/sbx/shell-image:latest with containerd and dockerd added. The sandbox starts in Docker-in-Docker mode, so docker run, docker build and docker compose work inside it.

Reach for this kit when the work shells out to docker. The plain shell kit carries the Docker CLI, compose and buildx but no engine, and is smaller.

⁠Usage

A kind: sandbox kit is named as the positional, with no --kit flag and no agent argument:

sbx run docker.io/sbx/shell-docker-kit:latest

Or from a git URL targeting this repo:

sbx run "git+https://github.com/docker/sbx-kits-contrib.git#dir=shell-docker"

Or from a local clone:

sbx run ./shell-docker/

Unlike shell, this name is not a built-in agent's, so released sbx builds accept it as written.

⁠Provider credentials

The same eight optional services as the shell kit. Bind the ones you use on the host and leave the rest; nothing here needs a key to start.

ServiceVariableHosts
anthropicANTHROPIC_API_KEYapi.anthropic.com, claude.ai, console.anthropic.com
githubGH_TOKENapi.github.com, copilot.github.com, github.com, raw.githubusercontent.com
googleGOOGLE_API_KEYaiplatform.googleapis.com, generativelanguage.googleapis.com, oauth2.googleapis.com, vertexai.googleapis.com
mistralMISTRAL_API_KEYapi.mistral.ai
nebiusNEBIUS_API_KEYapi.studio.nebius.com, api.tokenfactory.nebius.com
openaiOPENAI_API_KEYapi.openai.com, openai.com
openrouterOPENROUTER_API_KEYopenrouter.ai
xaiXAI_API_KEYapi.x.ai
sbx secret set openai

How each is routed (proxy-managed sentinels, the unpopulated GH_TOKEN, Basic auth on github.com) is identical to the shell kit; see its README⁠.

⁠Network

The allow list is the shell kit's: the eighteen credential hosts above plus the five apt sources the image ships (archive.ubuntu.com, security.ubuntu.com, ports.ubuntu.com, download.docker.com, cli.github.com). The Docker registry hosts docker pull needs (registry-1.docker.io, auth.docker.io, production.cloudflare.docker.com) are deliberately absent, as in shell: under a permissive host policy nothing restricts you; under deny-all, widen the policy for that sandbox or compose a kit that declares them.

⁠Launch command

No entrypoint, so the sandbox gets a shell; command: ["-l"] makes it a login shell, so ~/.bash_profile runs and sources ~/.bashrc, where the base image sets the prompt.

⁠Image

docker.io/sbx/shell-docker-image, built from the Dockerfile beside the spec for linux/amd64 and linux/arm64. It is docker.io/sbx/shell-image plus containerd.io and docker-ce from download.docker.com, with com.docker.sandboxes.start-docker="true" set so the runtime starts dockerd at boot. CI rebuilds it in the same run as the shell image, nightly included, so the two move together.