Step-by-step Instruction for compiling Docker on a GPU Machine
pool/stable/
and select the applicable architecture (amd64
, armhf
, arm64
, or s390x
). - containerd.io_<version>_<arch>.deb
- docker-ce_<version>_<arch>.deb
- docker-ce-cli_<version>_<arch>.deb
- docker-buildx-plugin_<version>_<arch>.deb
- docker-compose-plugin_<version>_<arch>.deb
.deb
packages. Update the paths in the following example to where you downloaded the Docker packages.sudo dpkg -i ./containerd.io_<version>_<arch>.deb
sudo dpkg -i ./docker-ce_<version>_<arch>.deb
...
sudo service docker start
sudo docker run hello-world
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/stable/deb/nvidia-container-toolkit.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-get update
NVIDIA Container Toolkit
packages:export NVIDIA_CONTAINER_TOOLKIT_VERSION=1.17.8-1
sudo apt-get install -y \
nvidia-container-toolkit=${NVIDIA_CONTAINER_TOOLKIT_VERSION} \
nvidia-container-toolkit-base=${NVIDIA_CONTAINER_TOOLKIT_VERSION} \
libnvidia-container-tools=${NVIDIA_CONTAINER_TOOLKIT_VERSION} \
libnvidia-container1=${NVIDIA_CONTAINER_TOOLKIT_VERSION}
Check if a docker group exist using
getent group docker
If it does not exist, then create a new group
sudo groupadd docker
sudo usermod -aG docker nam
nvidia-ctk
command:sudo nvidia-ctk runtime configure --runtime=docker
The nvidia-ctk
command modifies the /etc/docker/daemon.json
file on the host. The file is updated so that Docker can use the NVIDIA Container Runtime.
sudo systemctl restart docker
sudo docker run --rm --runtime=nvidia --gpus all ubuntu nvidia-smi
docker run -it --rm \
--gpus all \
--runtime=nvidia \
registry.bohrium.dp.tech/dptech/dp/native/prod-759944/deepmd:dEdN /bin/bash