필요할 때 꺼내쓰는 ML Docker Container 세팅하는 법(GPU)

선아·2023년 10월 24일
Version
OSubuntu20.04
Cuda11.7.1
Python3.8
PyTorch2.0.1

1. Docker Image Pull

처음에는 ubuntu부터 차례차례 쌓아올릴 생각도 했지만, 원하는 목적에 맞게 docker 이미지를 가져와서 base로 쓰는게 사실 제일 간단하고 시간 절약도 되는 것 같다.

Docker Hub에서 가져오면 되는데, cuda 버전은 nivida-smi 커맨드를 쳤을 때 CUDA Version 기준으로 쓰면 된다. (이것보다 이전 버전이어도 된다고 하는데, 되도록 맞추자)

docker pull nvidia/cuda:11.7.1-devel-ubuntu20.04

이미지를 pull하는데 시간이 꽤 걸리니 잠깐 쉬어준다.

2. 컨테이너 실행

이미지가 다운받아졌으면, 컨테이너를 실행한다.

docker run -it --gpus all --name myname -v volumeName:/container_dir nvidia/cuda:11.7.1-devel-ubuntu20.04

옵션을 간단하게 설명해보자면

  • -it : 컨테이너가 실행된 뒤, 'interactive'하게 bash에 명령어를 입력할 수 있다.
  • --gpus all : 현재 사용가능한 gpu를 해당 컨테이너에서 모두 사용한다.
  • --name: 컨테이너명을 설정
  • -v: 원하는 볼륨을 도커 컨테이너 안 디렉토리로 mount

그리고 그 뒤에 위에서 pull해왔던 이미지의 이름과 태그를 적어주면 된다.

3. 파이썬 설치

python 3.8 버전을 깔고 싶기 때문에, 버전을 명시해준다.

apt-get update
apt-get install python3.8

설치가 잘 됐는지는 아래 명령어로 확인할 수 있다.
python3.8 --version

4. pip 설치

컨테이너 내에서니까, pip으로 파이토치를 설치할 것이다. 그러려면 pip을 설치해줘야 한다.

apt install python3-pip

5. PyTorch 설치

PyTorch 사이트에 들어가, 조건에 맞게 선택한 뒤
'Run this Command:'에 있는 부분을 복사해서 사용한다.

그 뒤, 터미널이나 파이썬 실행 환경에서 cuda 사용가능한지 확인하면 된다.

python3
>>> import torch
>>> torch.cuda.is_available()  # TRUE

6. 그리고 더 필요한 것 설치

pip install transformers
  • git 등
profile
Junior ML Engineer

0개의 댓글