서버 /데비안

docker plex nvidia nvenc

PebbleKim 2019. 9. 11. 13:34

참고 : https://github.com/NVIDIA/nvidia-docker

 

NVIDIA/nvidia-docker

Build and run Docker containers leveraging NVIDIA GPUs - NVIDIA/nvidia-docker

github.com

1. Linux 배포판에 NVIDIA 드라이버 및 Docker 19.03을 설치했는지 확인

 

2. 난 이상하게 docker2가 잘 동작함

 1.번이 충족된다면 

 

Ubuntu 16.04/18.04, Debian Jessie/Stretch/Buster

 

# Add the package repositories
$ distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
$ curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
$ curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list

$ sudo apt-get update && sudo apt-get install -y nvidia-container-toolkit
$ sudo systemctl restart docker

 

 1번을 충족하지 못한다면 

nvidia-docker2 설치

 

3. 사용 & 확인

#이거먼저 해보기

docker run --runtime=nvidia --rm nvidia/cuda:9.0-base nvidia-smi

 

#### Test nvidia-smi with the latest official CUDA image
$ docker run --gpus all nvidia/cuda:9.0-base nvidia-smi

# Start a GPU enabled container on two GPUs
$ docker run --gpus 2 nvidia/cuda:9.0-base nvidia-smi

# Starting a GPU enabled container on specific GPUs
$ docker run --gpus '"device=1,2"' nvidia/cuda:9.0-base nvidia-smi
$ docker run --gpus '"device=UUID-ABCDEF,1"' nvidia/cuda:9.0-base nvidia-smi

# Specifying a capability (graphics, compute, ...) for my container
# Note this is rarely if ever used this way
$ docker run --gpus all,capabilities=utility nvidia/cuda:9.0-base nvidia-smi

 

즉 도커 환경 설정에서

NVIDIA_VISIBLE_DEVICES all (혹은 nvidia-smi -L 로 UUID 넣기)

NVIDIA_DRIVER_CAPABILITIES compute,video,utility

--runtime=nvidia

등을 추가

 

 

4. 도커의 구성 예

 

docker create \
--runtime=nvidia \
--name=plexserver \
--net=host \
-e NVIDIA_VISIBLE_DEVICES=all #UUID입력 \
-e NVIDIA_DRIVER_CAPABILITIES=compute,video,utility \

-e PUID=1000 -e PGID=1000 \
-e TZ=Asia/seoul \
-v /docker/plex/config:/config \
-v /mnt:/mnt \

-v /docker/plex/transcoding:/transcode \
plexinc/pms-docker