The frontend image is a specialized container that includes the Dynamo components (NATS, etcd, dynamo, NIXL, etc) along with the Endpoint Picker (EPP) for Kubernetes Gateway API Inference Extension integration. This image is primarily used for inference gateway deployments.
**Step 1: Build the Custom Dynamo EPP Image**
Follow the instructions in [`deploy/inference-gateway/README.md`](../deploy/inference-gateway/README.md) under "Build the custom EPP image" section. This process:
- Clones the Gateway API Inference Extension repository
- Applies Dynamo-specific patches for custom routing
- Builds the Dynamo router as a static library
- Creates a custom EPP image with integrated Dynamo routing capabilities
**Step 2: Build the Dynamo Base Image**
The base image contains the core Dynamo runtime components, NATS server, etcd, and Python dependencies:
```bash
# Build the base dev image (framework=none for frontend-only deployment)
./build.sh --framework none --target dev
```
**Step 3: Build the Frontend Image**
Now build the frontend image that combines the Dynamo base with the EPP:
```bash
# 2. Build the frontend image using the pre-built EPP
-**Python Environment**: Virtual environment with all required dependencies
-**NATS Server**: Message broker for Dynamo's distributed communication
-**etcd**: Distributed key-value store for configuration and coordination
#### Deployment
The frontend image is designed for Kubernetes deployment with the Gateway API Inference Extension. See [`deploy/inference-gateway/README.md`](../deploy/inference-gateway/README.md) for complete deployment instructions using Helm charts.
### run.sh - Container Runtime Manager
### run.sh - Container Runtime Manager
The `run.sh` script launches Docker containers with the appropriate configuration for development and inference workloads.
The `run.sh` script launches Docker containers with the appropriate configuration for development and inference workloads.