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

# wandb docker

export const GitHubLink = ({url}) => <a href={url} target="_blank" rel="noopener noreferrer" className="github-source-link">
    <svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor" xmlns="http://www.w3.org/2000/svg">
      <path d="M12 0C5.37 0 0 5.37 0 12c0 5.31 3.435 9.795 8.205 11.385.6.105.825-.255.825-.57 0-.285-.015-1.23-.015-2.235-3.015.555-3.795-.735-4.035-1.41-.135-.345-.72-1.41-1.23-1.695-.42-.225-1.02-.78-.015-.795.945-.015 1.62.87 1.845 1.23 1.08 1.815 2.805 1.305 3.495.99.105-.78.42-1.305.765-1.605-2.67-.3-5.46-1.335-5.46-5.925 0-1.305.465-2.385 1.23-3.225-.12-.3-.54-1.53.12-3.18 0 0 1.005-.315 3.3 1.23.96-.27 1.98-.405 3-.405s2.04.135 3 .405c2.295-1.56 3.3-1.23 3.3-1.23.66 1.65.24 2.88.12 3.18.765.84 1.23 1.905 1.23 3.225 0 4.605-2.805 5.625-5.475 5.925.435.375.81 1.095.81 2.22 0 1.605-.015 2.895-.015 3.3 0 .315.225.69.825.57A12.02 12.02 0 0024 12c0-6.63-5.37-12-12-12z" />
    </svg>
    GitHub source
  </a>;

<GitHubLink url="https://github.com/wandb/wandb/blob/v0.26.1/wandb/cli/cli.py#L2468" />

## Usage

```bash theme={null}
docker [OPTIONS] [DOCKER_RUN_ARGS]... [DOCKER_IMAGE]
```

## Description

Run code in a Docker container with W\&B configured.

Start a Docker container, inject the WANDB\_DOCKERs environment
variable, and mount the current working directory at `/app` by
default. Inject WANDB\_API\_KEY if logged in. Override the
container entrypoint to ensure `wandb` is installed.

Pass additional arguments to insert them into `docker run` before
the image name. Use a default image if none is specified.

Use `--jupyter` to install and start JupyterLab on port 8888.
Enable the NVIDIA runtime automatically if NVIDIA Docker is
available on the host.

Requires Docker to be installed and running on the host machine.

To inject W\&B environment variables into an existing `docker run`
command without modifying the entrypoint, use `wandb docker-run`.

For example, to run the default image and mount a dataset into the container:

```bash theme={null}
wandb docker -v /mnt/dataset:/app/data
```

To run a default image and start JupyterLab:

```bash theme={null}
wandb docker -v /mnt/dataset:/app/data --jupyter
```

To run a GPU-enabled image with a training command:

```bash theme={null}
wandb docker wandb/deepo:keras-gpu --no-tty --cmd "python train.py"
```

## Arguments

| Name              | Default | Type  |
| ----------------- | ------- | ----- |
| `docker_run_args` | STR     | False |
| `docker_image`    | STR     | False |

## Options

| Flag        | Type      | Description                                                                                |
| ----------- | --------- | ------------------------------------------------------------------------------------------ |
| `--nvidia`  | BOOL Flag | Use the nvidia runtime, defaults to nvidia if nvidia-docker is present. **Default**: False |
| `--digest`  | BOOL Flag | Output the image digest and exit. **Default**: False                                       |
| `--jupyter` | BOOL Flag | Run jupyter lab in the container. **Default**: False                                       |
| `--dir`     | STR       | Which directory to mount the code in the container. **Default**: /app                      |
| `--no-dir`  | BOOL Flag | Don't mount the current directory. **Default**: False                                      |
| `--shell`   | STR       | The shell to start the container with. **Default**: /bin/bash                              |
| `--port`    | STR       | The host port to bind jupyter on. **Default**: 8888                                        |
| `--cmd`     | STR       | The command to run in the container. **Default**: None                                     |
| `--no-tty`  | BOOL Flag | Run the command without a tty. **Default**: False                                          |
