# Docker Compose

> Services, volumes, and production profile.

Canonical: https://keta1930.github.io/icml2026-mcp/en/docs/operations/docker



The reference deployment uses both Compose files:

```bash
docker compose -f deploy/compose.yaml -f deploy/milvus.compose.yaml config
```

The stack contains the MCP application, Milvus Standalone, etcd, MinIO, and optional Attu. Named volumes hold the Milvus data, index manifest, and SQLite runtime state. Attu is available with `--profile tools`.

The `production` profile adds the TLS Nginx service. Set the exact public hosts, origins, trusted proxy network, certificate paths, and public port in the deployment environment before starting it:

```bash
docker compose -f deploy/compose.yaml -f deploy/milvus.compose.yaml \
  --profile production up -d
```

The application uses one process with bounded threads. Milvus handles concurrent reads through its service interface.
