나의 험난했던… 연구실 서버 셋팅기를 글로 남겨보려고 한다..! 연구실 서버의 사양은
1. Docker 설치 및 셋팅
-
도커(Docker) 설치 : 서버 운영체제는
우분투 16.04 LTS 를 사용하고 있고 아래의 명령어를 이용하여 자동 스크립트로 도커를 설치 하였다.
- sudo 없이 사용하기 : docker는 기본적으로 root권한이 필요한데, root가 아닌 사용자가 sudo없이 사용하려면
사용자를 docker 그룹에 추가 해 주면 된다.
- 도커(Docker) 버전 확인 : 버전을 확인하여 설치가 되었는지 확인한다.
2. NVIDIA-docker 설치
도커 컨테이너가 NVIDIA GPU를 support하려면 이미지를 실행할 때
- nvidia-docker : https://github.com/NVIDIA/nvidia-docker
- nvidia-docker 1.0 설치 공식문서 : https://github.com/NVIDIA/nvidia-docker/wiki/Installation-(version-1.0)
다음의 명령어로
다음의 명령어로 nvidia-docker 명령어가 제대로 실행되는지 확인해준다.(자동으로 CUDA 이미지가 다운로드 받아지는데 나중에 지워도 무방하다.)
아래의 이미지와 같이
2. NVIDIA 드라이브, CUDA, cuDNN 설치 확인
Tensorflow GPU 버전을 설치하려면 반드시
- NVIDIA 드라이버 설치 : https://devyurim.github.io/2018/05/24/15.html
- CUDA 9.0, cuDNN 7.0 설치 : https://devyurim.github.io/2018/05/25/16.html
3. Tensorflow Docker 설치
도커(Docker)는
우선 공식 무료 배포 이미지들을 다운로드 받으려면
- DockerHub : https://hub.docker.com/
그리고 터미널에서 아래의 명령어를 이용하여 docker hub에
아이디와 비밀번호를 입력하고 엔터를 누르면 Login Succeeded가 뜨면 docker hub에 접속할 수 있는 권한을 얻은 것이다.
- docker hub에서
tensorflow 이미지 검색 docker hub에서tensorflow 로 검색하여tag버튼 을 누르면 아래와 같이 다운로드 받을 수 있는태그 목록 을 확인 할 수 있다.
tensorflow docker image 파일 태그 예시
나는
- tensorflow docker hub : https://hub.docker.com/r/tensorflow/tensorflow/
이미지를 다운 로드 받았으면
- 옵션 추가 설명
-p : 포트 번호 입력 (호스트 포트번호 : 컨테이너 포트번호)
옵션에서 포트번호를 2개를 해준 이유는 8888은Jupyter notebook 연결 포트이고 6006은Tensorboard 연결 포트이다.
6006을 연결 안해주면 Tensorboard가 실행이 안되므로 포트를 꼭 맵핑해주어야 한다!!
–name : 생성할 컨테이너 이름
-v : 컨테이너와 맵핑할 폴더의 경로 + Jupyter notebook 설정
-e : 컨테이너 접속 비밀번호
–restart always : 도커 데몬이 실행됬을때 컨테이너 자동으로 실행(run)
tensorflow:1.8.0-gpu-py3 : 실행할 이미지를'이미지명:태그명' 으로 입력
Jupyter notebook 접속시 localhost라면
[!!!] 우분투 도커 데몬 실행 안될때
컴퓨터를 재부팅하고 docker를 재부팅 하였을때 아래와 같은 이미지의 오류와
이 문제는 nvidia-docker로 컨테이너를 생성하였을 때 발생하는
- nvidia-container-runtime : https://github.com/NVIDIA/nvidia-container-runtime
conference
- https://subicura.com/2017/01/19/docker-guide-for-beginners-2.html
- https://sehoi.github.io/2017-01-06/docker-basic/
- https://www.tensorflow.org/install/install_linux#InstallingDocker
- https://github.com/NVIDIA/nvidia-docker/wiki/Installation-(version-1.0)
- https://github.com/NVIDIA/nvidia-container-runtime