Launch GPU available Jupyter Server with Docker

James·2021년 9월 23일
0

ML systems

목록 보기
2/3
post-thumbnail

Introduction

GPU 가 설치된 서버, 또는 인스턴스에서 머신러닝, 딥러닝 작업을 하기 위해서는 우선적으로 시스템 세팅이 필요합니다.
이번 글에서는 아무것도 설치되지 않은 Ubuntu 환경에서 NVIDIA Driver 와 GPU available Docker 를 세팅하여
Docker 기반의 Tensorflow Jupyter Server 를 작동시키는 방법을 정리합니다.

1. NVIDIA Driver

# for Ubuntu LTS
sudo apt-get install linux-headers-$(uname -r)
distribution=$(. /etc/os-release;echo $ID$VERSION_ID | sed -e 's/\.//g')
wget https://developer.download.nvidia.com/compute/cuda/repos/$distribution/x86_64/cuda-$distribution.pin
sudo mv cuda-$distribution.pin /etc/apt/preferences.d/cuda-repository-pin-600
sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/$distribution/x86_64/7fa2af80.pub
echo "deb http://developer.download.nvidia.com/compute/cuda/repos/$distribution/x86_64 /" | sudo tee /etc/apt/sources.list.d/cuda.list
sudo apt-get update
sudo apt-get -y install cuda-drivers

# reboot for finish driver setting
reboot

2. Docker-CE & NVIDIA Container Toolkit

curl https://get.docker.com | sh && sudo systemctl --now enable docker
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-docker2
sudo systemctl restart docker
sudo docker run --rm --gpus all nvidia/cuda:11.0-base nvidia-smi

3. Luanch Docker Container

docker pull tensorflow/tensorflow:latest-gpu-jupyter
sudo docker run -it -d -p <new-portnumber>:8888 --name tensorflow-gpu-jupyter \
   -v <connect-directory>:/tf/ tensorflow/tensorflow:latest-gpu-jupyter --gpus all

4. Password Setting

docker ps
docker exec -it <container-id> /bin/bash
ipython
system("jupyter" "notebook" "list")

Conclusion

References
https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html
https://docs.nvidia.com/datacenter/tesla/tesla-installation-notes/index.html
https://towardsdatascience.com/how-to-properly-use-the-gpu-within-a-docker-container-4c699c78c6d1

profile
indexing

0개의 댓글