환경 세팅

김민준·2025년 5월 2일

https://operationcoding.tistory.com/145
nvidia-smi를 통해 확인
도구 자체 버전 565.77.01

드라이버 버전 566.36

현재 설치된 드라이버가 지원하는 최대 CUDA RUNTIME 버전(CUDA TOOLKIT 버전아님, 이건 nvcc --version으로 확인)

드라이버 버전
1. nvidia driver버전에 의한 cuda 버전 확인 ,
https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html
cuda 12.6 update3까지 지원

2.. gpu capabilty 에 따른 cuda 지원버전 확인 , 현재 pc 4070, capability 8.9
https://developer.nvidia.com/cuda-gpus
11.8 ~ 12.2 등 아직 최신 버전까지 가능

  1. pytorch 버전 확인
    https://pytorch.org/get-started/locally/
    11.8, 12.6, 12.8 이렇게 가능

  2. tensorflow 버전 확인
    https://www.tensorflow.org/install/source#gpu
    cuda 12.6 -> 아직 지원 x
    12.5 까지만 아직 지원
    so cuda 11.8로 세팅 간다
    11.8 -> tensorflow 2.12.0 2.13.0 2.14.0
    -> cudnn 8.6 8.6 8.7

그냥 도커이미지 파일 pytorch나 nvidia 에서 제공하는 거 devel 버전으로 하기로 함 12.6 cudnn ubunutu22.04 devel

https://velog.io/@cjkangme/WSL2%EB%A1%9C-CUDA-%ED%99%98%EA%B2%BD-%EC%84%A4%EC%A0%95%ED%95%98%EA%B8%B0-CUDAcuDNN-%EC%84%A4%EC%B9%98%EA%B9%8C%EC%A7%80

우선 글로벌 환경에서 cuda cudnn pytorch tensorflow등 되는지 확인하고 nvidia container tool kit -> k8s진행

설치 진행 순서(이전에 윈도우 호스트에 nvidia driver 설치)
1. 도커 공식홈에서 ubuntu docker 설치과정 따름
2. cuda 11.8 다운 옵션으로 wsl-ubuntu 선택, network 선택히여 설치하였을때 sudo apt-get install cuda로하니 12.8 로 설치 되어버림
쿠다삭제
sudo apt-get remove --purge '^cuda.*'
sudo apt-get autoremove
sudo apt-get clean

wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-keyring_1.0-1_all.deb
sudo dpkg -i cuda-keyring_1.0-1_all.deb
sudo apt-get update
sudo apt-get install cuda-11-8

  1. 환경변수 추가하여 현재 셸이 cuda 인식하게 함
    echo 'export PATH=/usr/local/cuda/bin:PATH>> /.bashrcechoexportLDLIBRARYPATH=/usr/local/cuda/lib64:PATH' >> ~/.bashrc echo 'export LD_LIBRARY_PATH=/usr/local/cuda/lib64:LD_LIBRARY_PATH' >> ~/.bashrc
    source ~/.bashrc

4 nvidia container toolkit 설치 (호스트 환경에서 공식홈절차에 따라 )
nvidia-container-toolkit --version 하여 설치 버전 확인
sudo nvidia-ctk runtime configure --runtime=docker
sudo service docker restart 하여 nvidia 런타임을 docker에 등록

용도명령어설명
Docker (기본)sudo nvidia-ctk runtime configure --runtime=dockernvidia 런타임을 Docker에 등록함 (기본 설정에 필요)
Rootless Dockernvidia-ctk ... --config=$HOME/.config/docker/daemon.json루트 권한 없는 사용자용 Docker 설정
containerd (K8s용)sudo nvidia-ctk runtime configure --runtime=containerd쿠버네티스용 containerd에 런타임 등록
CRI-Osudo nvidia-ctk runtime configure --runtime=crio또 다른 K8s 컨테이너 런타임
PodmanCDI 방식 권장NVIDIA 디바이스를 CDI(Device Interface) 방식으로 접근

sudo docker run --rm -it --gpus all nvidia/cuda:12.0.0-base-ubuntu22.04 bash
도커 접속후 nvidia-smi 확인하여
sudo docker run --rm -it --gpus all nvidia/cuda:12.0.0-devel-ubuntu22.04 bash
이건 devel 이미지로 이걸 쓰면 nvcc, /usr/local/cuda/bin, /usr/local/cuda/include 전부 들어있어서 바로 컴파일 가능

이미지 이름설명
baseCUDA 드라이버만 포함. 개발 툴 없음 (❌ nvcc, ❌ 컴파일러)
runtime드라이버 + 런타임 라이브러리만 있음. (❌ 개발 툴)
devel✅ 컴파일러(nvcc) + 헤더 + 개발도구 포함

✅ 4. 추가 팁: Python + PyTorch 개발까지 하고 싶다면?
이미 PyTorch 설치된 GPU 이미지 사용도 가능:
sudo docker run --rm -it --gpus all pytorch/pytorch:2.1.0-cuda12.1-cudnn8-runtime bash

nvidia docker images 목록 확인
https://hub.docker.com/r/nvidia/cuda/tags?name=12.1&page=3

pytorch docker images 목록 확인
https://hub.docker.com/r/pytorch/pytorch/tags

5/7
도커이미지 ros까지 포함해서 업로드 완료

profile
지금까지 해온 여러 활동들을 간략하게라도 정리해보고자 합니다.

0개의 댓글