docker를 사용하는 이유는 개발 환경을 독립시키는 것에 있으며, 컴퓨팅 리소스가 각 컨테이너 별로 독립적으로 운영된다.
Nvidia GPU를 활용할 경우, 해당 장비의 드라이버를 기반으로 하고 있으며 딥러닝 등의 인공지능 연구개발을 위해 CUDA를 활용하려면 관련 툴들을 설치할 필요가 있음
ubuntu-drivers devicessudo apt install nvidia-driver-[version number]
ex) sudo apt install nvidia-driver-550sudo rebootnvidia-smi
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
sudo apt-get install -y nvidia-container-toolkit
sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart docker
which nvidia-container-runtime-hook
docker run --rm --runtime=nvidia --gpus all ubuntu nvidia-smi
or
sudo docker run --rm --runtime=nvidia --gpus all ubuntu nvidia-smi

docker: Error response from daemon: could not select device driver "" with capabilities: [[gpu]]docker: error response from daemon: unknown or invalid runtime name: nvidia/etc/docker/daemon.json에 runtimes에서 nvidia가 있는지 확인Ex) sudo docker run --rm --runtime=nvidia --gpus all ubuntu nvidia-smi