# Docker

Enterprise container images are distributed exclusively through the [AWS Marketplace ECR](/docs/enterprise/deployment/aws-marketplace.md) registry. Subscribe to the Spice.ai Enterprise listing on AWS Marketplace, then authenticate with `aws ecr get-login-password` before pulling.

## Images

Replace `<repo>` below with either `spiceai-enterprise-byol` (Bring Your Own License) or `spiceai-enterprise-plan` (Marketplace subscription) — see [AWS Marketplace](/docs/enterprise/deployment/aws-marketplace.md) for details.

| Image                                                                          | Description                                   |
| ------------------------------------------------------------------------------ | --------------------------------------------- |
| `709825985650.dkr.ecr.us-east-1.amazonaws.com/spice-ai/<repo>:latest-models`   | Default distribution with AI/ML model support |
| `709825985650.dkr.ecr.us-east-1.amazonaws.com/spice-ai/<repo>:latest`          | Data-only distribution                        |
| `709825985650.dkr.ecr.us-east-1.amazonaws.com/spice-ai/<repo>:latest-cuda`     | CUDA GPU-accelerated distribution             |
| `709825985650.dkr.ecr.us-east-1.amazonaws.com/spice-ai/<repo>:latest-nas`      | NAS distribution (SMB + NFS connectors)       |
| `709825985650.dkr.ecr.us-east-1.amazonaws.com/spice-ai/<repo>:latest-jemalloc` | jemalloc memory allocator variant             |
| `709825985650.dkr.ecr.us-east-1.amazonaws.com/spice-ai/<repo>:latest-mimalloc` | mimalloc memory allocator variant             |
| `709825985650.dkr.ecr.us-east-1.amazonaws.com/spice-ai/<repo>:latest-sysalloc` | System (glibc) memory allocator variant       |

## Pull an Image

```bash
aws ecr get-login-password --region us-east-1 \
  | docker login --username AWS --password-stdin 709825985650.dkr.ecr.us-east-1.amazonaws.com

docker pull 709825985650.dkr.ecr.us-east-1.amazonaws.com/spice-ai/spiceai-enterprise-byol:latest-models
```

## Run

```bash
docker run -p 8090:8090 -p 50051:50051 -p 9090:9090 \
  709825985650.dkr.ecr.us-east-1.amazonaws.com/spice-ai/spiceai-enterprise-byol:latest-models \
  --http 0.0.0.0:8090 \
  --metrics 0.0.0.0:9090 \
  --flight 0.0.0.0:50051
```

### With a Spicepod Configuration

Mount a Spicepod YAML file into the container:

```bash
docker run -p 8090:8090 -p 50051:50051 -p 9090:9090 \
  -v $(pwd)/spicepod.yaml:/app/spicepod.yaml \
  709825985650.dkr.ecr.us-east-1.amazonaws.com/spice-ai/spiceai-enterprise-byol:latest-models
```

## Exposed Ports

| Port    | Protocol | Description         |
| ------- | -------- | ------------------- |
| `8090`  | HTTP     | HTTP/SQL API        |
| `50051` | gRPC     | Apache Arrow Flight |
| `9090`  | HTTP     | Prometheus metrics  |

## Image Details

Enterprise images are built `FROM scratch` with a minimal filesystem containing:

* The `spiced` binary
* CA certificates
* Timezone database
* Required shared libraries

The container runs as UID 65534 (nobody) for security.

### Environment Variables

| Variable        | Default                              |
| --------------- | ------------------------------------ |
| `HOME`          | `/app`                               |
| `HF_HOME`       | `/.cache/huggingface`                |
| `SSL_CERT_FILE` | `/etc/ssl/certs/ca-certificates.crt` |
| `SSL_CERT_DIR`  | `/etc/ssl/certs`                     |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.spice.ai/docs/enterprise/deployment/docker.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
