Driver issues

Docker container can't see GPU — nvidia-container-toolkit missing

could not select device driver "nvidia" with capabilities: [[gpu]]
By Eruo Fredoline · Last verified Jun 12, 2026

Cause

docker run --gpus all fails because nvidia-container-toolkit isn't installed (or the Docker daemon wasn't restarted after install). This is the single most common Docker-GPU failure.

Solution

1. Install nvidia-container-toolkit (Ubuntu / Debian):

distribution=$(. /etc/os-release; echo $ID$VERSION_ID)
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
curl -s -L https://nvidia.github.io/libnvidia-container/$distribution/libnvidia-container.list | \
  sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
  sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list

sudo apt update
sudo apt install -y nvidia-container-toolkit

2. Configure Docker runtime + restart daemon:

sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart docker

3. Verify GPU visible in container:

docker run --rm --gpus all nvidia/cuda:12.6.0-base-ubuntu24.04 nvidia-smi

4. Docker Compose GPU access:

services:
  vllm:
    image: vllm/vllm-openai:latest
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: all
              capabilities: [gpu]

5. WSL2 case: the same toolkit install works inside WSL2 with Docker Desktop's WSL2 backend. The Windows-host driver passes through; you only need the toolkit + Docker engine inside WSL2.

Full pattern in the Linux local AI guide.

Related errors

Did this fix it?

If your case was different, email Contact support with what you saw and we'll update the page. If it worked but took different commands on your platform, we want to know that too.