D2VGPU [docker-to-vulkan]
< HOME / SETUP

D2VGPU Setup Guide

Complete guide to installing the Windows host runtime, configuring Docker Desktop, and passing GPU acceleration into your containers.

[ 01 // REQUIREMENTS ]

System Requirements

D2VGPU bridges your Windows graphics driver directly to Docker containers via Vulkan ICD pass through.

OPERATING SYSTEM:Windows 10 (21H2+) or Windows 11 (64 bit)
CONTAINER RUNTIME:Docker Desktop 4.25+ (WSL2 or Hyper-V backend)
VULKAN SUPPORT:Vulkan 1.2 or higher
HARDWARE COMPATIBILITY:AMD (RDNA / GCN4+), Intel (Arc / Iris Xe), NVIDIA (GTX 10+ / RTX)
[ 02 // INSTALLATION ]

Host Installation

Install the Windows host service daemon and register the Docker runtime plugin.

# 1. Download and run the Windows installer (PowerShell as Administrator)
winget install d2vgpu
# 2. Activate with your license key
d2vgpu activate --key=D2VG-XXXX-XXXX-XXXX
# 3. Verify daemon status and detected GPU hardware
d2vgpu status
[ 03 // CONFIGURATION ]

Docker Compose Setup

Add the runtime: d2vgpu directive to any service in your docker-compose.yml file. No code or image modification is required.

# docker-compose.yml
services:
ollama:
image: ollama/ollama:latest
container_name: local-ai
runtime: d2vgpu
environment:
- D2VGPU_DEVICE=all
ports:
- "11434:11434"
volumes:
- ollama_data:/root/.ollama
[ 04 // CLI REFERENCE ]

CLI Usage & Flags

Run individual containers directly with the Docker CLI using standard device arguments:

# Run container on primary host GPU
docker run --rm -it --runtime=d2vgpu ubuntu:latest
# Bind container to specific GPU adapter index
docker run --rm -it --runtime=d2vgpu --device=gpu:0 my-vulkan-app
# Benchmark GPU container throughput
docker run --rm -it --runtime=d2vgpu vulkan/vkmark
[ 05 // TROUBLESHOOTING ]

Diagnostics & Troubleshooting

Common checks if a container fails to detect the graphics hardware:

1. Host Vulkan Driver Verification
Ensure your Windows host GPU driver supports Vulkan. Run vulkaninfo in PowerShell to confirm your physical adapter is enumerated.
2. D2VGPU Daemon Check
Confirm the background bridge daemon is running with d2vgpu status. If inactive, restart the service via d2vgpu daemon restart.
3. Docker Daemon Registration
Verify that "runtimes": { "d2vgpu": ... } is present in your Docker Desktop daemon configuration file (%USERPROFILE%\.docker\daemon.json).
Need a workstation license?
Obtain a key for your Windows development machine.
[ GET LICENSE KEY ]