Goal: Configure Docker to access an NVIDIA GPU using the NVIDIA Container Toolkit, verify the setup with a live nvidia-smi container run, and document each step — OR, if you don't have compatible GPU hardware, study the toolkit's architecture from its public release history and produce a labeled component diagram instead. Both paths use only free, local, or publicly available tools. Steps — Path A (you have an NVIDIA GPU and Linux or WSL2):
nvidia-smi directly on the host (not in a container). Capture the output.apt-get install nvidia-container-toolkit.nvidia-ctk runtime configure --runtime=docker and inspect the resulting /etc/docker/daemon.json to see exactly what changed.docker run --rm --gpus all nvidia/cuda:12.4.1-base-ubuntu22.04 nvidia-smi and confirming your GPU(s) appear in the container's output.--gpus device=0 and the NVIDIA_DRIVER_CAPABILITIES=utility environment variable, and note in your own words how the output differs (or doesn't) from Step 5.Steps — Path B (no compatible GPU hardware):
libnvidia-container, the nvidia-ctk CLI, the container runtime hook, device plugin integration, and EGL/WSL2 support).docker run --gpus all ... request flows from the Docker CLI through the daemon, the NVIDIA runtime hook, libnvidia-container, and finally to the host GPU driver.Deliverables: A text document (or PDF) containing your captured command output and reflection (Path A) or your diagram and reflection (Path B), submitted via online upload or text entry.