본문 바로가기

Server/Docker

Docker, JupyterLab with GPU setting

반응형

도커를 까는 법 + GPU 세팅한 JupyterLab 띄우기

디테일한 설치법은 버전이 자주 업데이트 되고 그에 따라 항상 바뀌기 때문에, 공식 홈페이지 매뉴얼을 참고하는것이 좋다.
전체적인 프로세스는 다음과 같다.

전체 Process

  1. Install Ubuntu

  2. Install nvidia, cuda
    1-1. Install nvidia
    1-2. Install cuda

  3. Install Docker-CE
    2-1. Install Nvidia-Docker 2.0 (on Ubuntu 18.04)

  4. Install Docker container
    3-1. sudo docker pull jupyter/datascience-notebook

1. Install nvidia, cuda

먼저 그래픽 nvidia와 cuda 드라이버를 깔자. 항상 상황이 바뀔 수 있기 때문에, 시간이 오래 지났다면 참고만 하도록 하자. 언제나 최신 글을 참고하는 것으로!

1-1 Install nvidia

Ref1을 잘 모르겠다면 Ref2를 참고해서 인스톨하면 된다.

1-2. Install cuda

Ref3, Ref4참고

2. Install Docker-CE and nvidia-docker 2.0

Ref5, Ref6참고

3. Install Docker container

Ref7에서 원하는 jupyter notebook을 골라서 콘테이너를 받으면 된다. 데이터 분석과, deep learning을 같이하기 위해서라면, jupyter/datascience-notebook 또는 tensorflow/tensorflow 둘 중 하나를 받는다. 개인적으로 dev 버전을 받을 수 있는 tensorflow를 추천. devel-gpu-py3를 보통 받는다.

3-1. Pull image

요리조리 요리를 할수있는 devel을, 추가적으로 gpu와 py3 옵션을 넣은 걸 받아준다.
sudo docker pull /tensorflow/tensorflow:latest-devel-gpu-py3

3-2. Run image with options

sudo nvidia-docker run -it -p 8889:8888 -p 6007:6006 -h JupyterLab -v /home/adminn/Data:/home/Data -v /home/Jupyter:/home/Jupyter --name JupyterLabYJK tensorflow/tensorflow:latest-devel-gpu-py3

-p는 포트포워딩, -h, --name은 이름 붙이기, -v는 볼륨 할당
자세한 내용은 Ref8 참고

3-3 Setting: in container

콘테이너 내부 세팅하는 것은 잘 나와있지가 않다. 먼저 주피터를 설치하는 과정과 크게 다를 것이 없다. configuration파일을 만들어서 아래 주석 안의 내용을 삽입하고 넣고, 맨 아래 명령어로 실행하면 된다.
pip install jupyterlab
jupyter-lab --generate-config

apt-get update

apt-get install -y vim
vi /root/.jupyter/jupyter_notebook_config.py

c.NotebookApp.ip = '\*'  
c.LabApp.workspaces\_dir = '/home/Jupyter'

c.NotebookApp.notebook\_dir = '/home/Jupyter'  
c.NotebookApp.port = 8888  

jupyter lab --allow-root --NotebookApp.token=''

3-3-2 Add LD_LIBRARY_PATH

** 2021.01.22 추가 **

원문링크에 따르는 추가를 해주면, 별 문제 없이 CUDA를 읽어올 수 있다.

이유는... 나도 몰라요 흑 ㅠㅠ
여튼 이거 하면 됩니다....!

export LD\_LIBRARY\_PATH=/usr/local/cuda/extras/CUPTI/lib64:/usr/local/cuda/lib64:/usr/include/x64\_64-linux-gnu:/usr/local/nvidia/lib:/usr/local/nvidia/lib64  
반응형

'Server > Docker' 카테고리의 다른 글

Docker 초보자 필수 매뉴얼  (0) 2018.04.03
Docker를 이용하여 tensor flow (GPU ver) 사용하기.  (0) 2018.04.02
Dockerfile 만드는 법  (0) 2017.05.31