[인공지능 모델 서빙] docker 컨테이너 cpu > gpu 사용 (cent OS)

개발노트·2025년 1월 31일

💡기존 cpu 사용하는 컨테이너를 gpu 사용으로 변경하는 방법 (cent OS)

nvidia-container 설치

$ sudo yum install -y nvidia-container-toolkit

안 되면 repo 직접 추가

$ distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
$ curl -s -L https://nvidia.github.io/libnvidia-container/$distribution/libnvidia-container.repo | sudo tee /etc/yum.repos.d/nvidia-container-toolkit.repo
$ sudo yum install -y nvidia-container-toolkit

대신 /etc/yum.repos.d 폴더에 아무것도 없어야 한다고 함. 아무 백업 폴더 만들어서 다 옮겨줌.
yum install 에러 해결방법

설치하고나면 도커 데몬 수정

$ sudo vi /etc/docker/daemon.json
{
"data-root": "/home/docker",
"runtimes": {
"nvidia": {
"path": "nvidia-container-runtime",
"runtimeArgs": []
		}
	}
}

도커 빌드

도커 파일이 Dockerfile.cuda 파일이 아닌 Dockerfile 로 빌드 되어 있는데, 무작정 다시 빌드하면 이미 있는 프로젝트라서 안 된다.

이미지를 먼저 지우고 진행 필요.

$ docker images
$ docker rmi <img id>

이미지 재빌드

$ docker push {hub}:latest
$ docker build -f ./Dockerfile.cuda -t {hub}:latest

컨테이너 재실행

$ docker-compose -f {docker compose yml 파일.yml} down
$ docker-compose -f {docker compose yml 파일.yml} up -d —build

yml 파일에 구절 추가

runtime: nvidia 

컨테이너 로그 확인

$ nohup docker-compose -f {docker compose yml 파일.yml} logs -f celery > celery-logs.txt 2>&1 &

참고자료
https://velog.io/@ghdd999/NVIDIA-Docker

0개의 댓글