우분투에서 docker를 활용한 인공지능 개발환경 만들기
시스템 환경
•
OS : Ubuntu 20.04
•
graphics
◦
GTX 970
◦
GTX 1080 ti
•
ram : 16GB
•
storage
◦
ssd 500GB
◦
hdd 1TB
그래픽 드라이버 설치
그래픽 카드 확인
lspci | grep -i VGA
Bash
복사
드라이버 설치
sudo apt-get install ubuntu-drivers-common
sudo ubuntu-drivers autoinstall
Bash
복사
설치 확인
nvidia-smi
Bash
복사
Cuda/Cudnn 설치
Cuda 설치
TensorFlow 2.1.0이상은 CUDA 10.1을 지원하므로 CUDA 10.1을 설치한다.
# gcc 버전 바꾸기
sudo update-alternatives --config gcc
Bash
복사
Cudnn 설치
cudnn은 7.6.5 을 설치
설치 확인
# cuda 설치 확인
nvcc --version
# cudnn 설치 확인
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
Bash
복사
Docker 설치
Docker 설치
sudo apt-get update
# 필요 패키지 다운로드
sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common
# GPG키 등록
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo apt-key fingerprint 0EBFCD88
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
# 도커 설치
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
# 도커 권한 부여
sudo usermod -aG docker $USER
sudo reboot
Bash
복사
Nvidia Docker 2 설치
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
Bash
복사
설치 확인
docker info
nvidia-docker info
docker run -it --rm --gpus all ubuntu nvidia-smi
Bash
복사
테스트
•
Docker 컨테이너 실행
docker pull ufoym/deepo:all-jupyter
docker run --gpus all -it -d --name=torch -v ~/Dev:/home -p 8888:8888 --ipc=host ufoym/deepo:all-jupyter jupyter notebook --no-browser --ip=0.0.0.0 --allow-root --NotebookApp.token= --notebook-dir=/home
Bash
복사
•
8888 포트로 Jupyter 접속 or 터미널 접속
docker attach -it torch bash
Bash
복사
•
간편 작동 확인 코드
import torch
torch.cuda.is_available() //True
Python
복사