For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
Digest
  • Getting Started
    • Quickstart
    • Introduction
    • Local Installation
    • Building from Source
    • Kubernetes Deployment
    • Contribution Guide
  • Resources
    • Support Matrix
    • Feature Matrix
    • Release Artifacts
    • Examples
    • Glossary
  • Digest
    • NVIDIA Dynamo Snapshot: Fast Startup for Inference Workloads on Kubernetes
    • DynoSim: Simulating the Pareto Frontier
    • Dynamo Day 0 support for TokenSpeed
    • Multi-Turn Agentic Harnesses
    • Full-Stack Optimizations for Agentic Inference
    • Flash Indexer: Inter-Galactic KV Routing
  • Kubernetes Deployment
  • Feature Guides
    • KV Cache Aware Routing
    • Disaggregated Serving
    • KV Cache Offloading
    • Tool Call and Reasoning Parsing
    • Benchmarking
    • Fault Tolerance
    • Observability (Local)
    • Inference Simulation
    • Agents
    • LoRA Adapters
    • Multimodal
    • Diffusion
    • Fastokens Tokenizer
  • Backends
    • SGLang
    • TensorRT-LLM
    • vLLM
      • Custom Backend Overview
      • Writing Unified Backends
      • Writing Python Workers
      • Runtime Containers
  • Components
    • Frontend
    • Router
    • Planner
    • Profiler
    • KVBM
  • Integrations
  • Design Docs
    • Overall Architecture
    • Architecture Flow
    • Disaggregated Serving
    • Distributed Runtime
  • Documentation
    • Dynamo Docs Guide
NVIDIANVIDIA
Developer-friendly docs for your API
Privacy Policy | Your Privacy Choices | Terms of Service | Accessibility | Corporate Policies | Product Security | Contact

Copyright © 2026, NVIDIA Corporation.

LogoLogoDocumentation
Digest
On this page
  • Engine and Target Toggles
  • Custom Backend Image
  • Run Locally
BackendsCustom Backend

Runtime Containers

Build Dynamo runtime images for built-in or custom backends

||View as Markdown|
Previous

Writing Python Workers in Dynamo

Next

Frontend

Dynamo runtime images package the Dynamo runtime with an inference engine. The same container build flow can generate images for the built-in engines or a backend that you add on top of the Dynamo runtime.

Use container/render.py to select the engine family and Docker target:

$# vLLM runtime image
$python container/render.py --framework=vllm --target=runtime --output-short-filename
$docker build -t dynamo:latest-vllm-runtime -f container/rendered.Dockerfile .
$
$# SGLang runtime image
$python container/render.py --framework=sglang --target=runtime --output-short-filename
$docker build -t dynamo:latest-sglang-runtime -f container/rendered.Dockerfile .
$
$# TensorRT-LLM runtime image
$python container/render.py --framework=trtllm --target=runtime --cuda-version=13.1 --output-short-filename
$docker build -t dynamo:latest-trtllm-runtime -f container/rendered.Dockerfile .

Engine and Target Toggles

--framework chooses the engine base. Use vllm, sglang, or trtllm for built-in backends. Use none when you want a Dynamo-only base image and plan to install your own backend package.

--target chooses the image shape:

TargetUse when
runtimeRunning inference, benchmarks, or Kubernetes deployments.
local-devDeveloping locally with the workspace bind-mounted into the container.
devLegacy root-based development workflows. Prefer local-dev for new work.

Custom Backend Image

For a Python custom backend, start with a built-in engine image if you need that framework’s CUDA/Python stack, or use --framework=none if your backend brings its own dependencies:

$python container/render.py --framework=none --target=runtime --output-short-filename
$docker build -t dynamo:custom-backend-base -f container/rendered.Dockerfile .

Then layer your backend package into a small Dockerfile:

1FROM dynamo:custom-backend-base
2
3COPY dist/my_backend-*.whl /tmp/
4RUN uv pip install --system --no-deps /tmp/my_backend-*.whl
5
6ENTRYPOINT ["my-backend"]

For a Rust custom backend, build the backend binary in your own builder stage and copy it into the Dynamo runtime image:

1FROM rust:1.93 AS backend-builder
2WORKDIR /src
3COPY . .
4RUN cargo build --release
5
6FROM dynamo:custom-backend-base
7COPY --from=backend-builder /src/target/release/my-backend /usr/local/bin/my-backend
8
9ENTRYPOINT ["my-backend"]

Run Locally

Use container/run.sh to launch the image with the same GPU and mount defaults used by Dynamo development workflows:

$container/run.sh --image dynamo:custom-backend-base --mount-workspace -it

For the full container build reference, target matrix, and troubleshooting notes, see the repository-level Container Development Guide.