proxmox 에서 vm 에 gpu 추가하기

VM > Hardware > Add > PCI Device > 장치 추가
ubuntu (vm) 에 드라이버 설치
권장버전 설치
sudo ubuntu-drivers autoinstall
혹은 버전 선택해서 설치하려면
sudo ubuntu-drivers list
sudo apt install nvidia-driver-<버전>
이 후 재부팅
sudo reboot
재부팅 후 nvidia-smi 로 확인
ubuntu (vm) 에 nvidia-container-toolkit 설치
docker 에서 사용하기 위해 nvidia-container-toolkit 을 설치하여야 함
NVIDIA CUDA 저장소 추가
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey \
| sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
curl -fsSL 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 update
sudo apt install -y nvidia-container-toolkit
docker runtime 설정
sudo nvidia-ctk runtime configure --runtime=docker
결과는 daemon.json 파일에서 확인 가능
cat /etc/docker/daemon.json
{
"data-root": "/home/docker",
"runtimes": {
"nvidia": {
"args": [],
"path": "nvidia-container-runtime"
}
}
}
docker 재시작 하여 적용
sudo systemctl restart docker
동작 확인
cuda 이미지로 바로 확인하려면 아래와 같이 가능
docker run --rm --gpus all nvidia/cuda:12.4.1-base-ubuntu22.04 nvidia-smi
docker compose 를 사용한다면 docker-compose.yaml 에 아래와 같이 작성하여 docker compose up 으로 확인 가능
services:
app:
image: nvidia/cuda:12.4.1-base-ubuntu22.04
command: nvidia-smi
gpus: all 