[Pytorch 스터디] 1. 실습환경 세팅(MAC) with Docker

Effie⭐️·2023년 8월 22일
0

네이버 부스트코스 파이토치로 시작하는 딥러닝 기초 강의를 기반으로 작성하는 스터디 기록입니다.

강의를 통한 스터디를 진행하기 위해선, 첫 번째로 실습 환경을 설정해야 한다. 강의에서는 실습환경을 도커(Docker)를 이용해 세팅하기를 권장한다.

여기서는 파이토치 실습을 위한 도커 이미지 설치와 주피터 노트북 실행에 대한 내용만을 작성한다. 나머지 도커 사용법에 대한 내용은 다른 포스팅을 참고해주세요.




1. 도커 설치하기

  1. https://www.docker.com/에서 Get Started 클릭하여 다운받고 설치한다.


설치완료!

2. 설치가 완료되었다면 터미널 창을 열고 docker --version 을 입력하여 버전이 잘 출력되는지 확인하자. 버전이 잘 출력된다면 설치가 제대로 된 것이다!

+) "hello-world" 이미지를 실행하기

설치가 제대로 된 것인지 확인하기 위해 테스트로 hello-world 이미지를 실행해보자.

터미널에 docker run hello-world을 입력하면 도커는 Docker Hub 에서 "hello-world" 이미지를 다운로드하고 실행한다.

이미지를 다운로드 한 뒤에는 위와 같은 메시지가 표시된다. 이것으로 "hello-world" 이미지가 성공적으로 실행된 것을 확인할 수 있다!!



2. 도커 이미지 다운로드 받기

이제 실습에 사용할 도커 이미지를 받아서 컨테이너를 사용할 준비를 하자.

  1. 터미널 창에 아래 명령어를 입력하여 이미지를 다운로드 받는다.
docker pull deeplearningzerotoall/pytorch

필요에 따라 로그인이 필요할 수도 있다고 하지만 나는 안해도 다운로드가 가능했다. 만약, 로그인을 해야 한다면, Docker Hub에서 회원가입을 하면 된다.

설치가 완료되었다면, docker images 명령어를 입력하여 이미지가 제대로 설치되었는지 확인하자.


위 사진과 같이 목록에 설치가 완료된 것을 확인할 수 있다.

  1. 도커 이미지로부터 컨테이너 실행한다. 아래의 명령어를 입력하여 실행할 수 있다. 이때, --name 뒤에는 원하는 이름으로 설정할 수 있다. 강의에서는 pt로 설정하였으므로, 나도 똑같이 따라했다.
docker run -i -t --name pt -p 8888:8888 -p 8097:8097 deeplearningzerotoall/pytorch /bin/bash

실행이 완료되면 터미널 창이 ```~ %```에서 ```root@[고유번호]:~#```로 변경된 것을 확인할 수 있다. 도커 컨테이너를 만들었고 root 계정으로 컨테이너 내부 쉘에 접속한 상태인 것이다.

컨테이너를 끄고 싶다면 exit를 입력하면 된다.

  1. 종료된 컨테이너를 다시 실행하고 싶다면, run 명령어가 아닌, docker start pt를 입력하고, docker attach pt를 입력하면, 컨테이너 터미널 창으로 접속 가능하다.


3. jupyter notebook 설치 및 실행

이제 실습에 사용할 주피터 노트북과 파이토치 등 라이브러리를 다운로드 받아보자. 하나하나 다운받으려 했다면 상당히 귀찮을 일이었겠지만, 강의에서는 친절하게 github에 모든 내용을 정리해두었기 때문에, 우리는 이걸 fork와 clone만으로 쉽게 환경을 세팅할 수 있다.

  1. 모두를 위한 딥러닝 깃허브의 Pytorch 레파지토리를 자신의 계정으로 fork한다.

  2. clone의 링크를 복사한 뒤, 컨테이너 내부로 들어와서

git clone (복사한 링크)

를 입력한다.

  1. 완료가 되었다면, Pytorch 디렉토리로 들어간다.
cd Pytorch

  1. 필수 패키지를 설치해준다.
pip install --upgrade pip
pip install -r requirements.txt
  1. 필요한 모든 패키지가 설치가 완료되었다. 이제!! 드디어!!!! jupyter notebook을 실행해준다!!
jupyter notebook --ip 0.0.0.0 --allow-root
  1. 127.0.0.1:8888/ 링크로 브라우저에 접속하면, 기대했던 주피터 노트북 홈화면이 아닌, 아래와 같은 화면이 등장한다.

    이때, Setup a Password 부분에서 터미널 창에 나온 토큰을 입력하고, 토큰 대신 간단하게 사용할 패스워드를 입력해준다.

    token= 뒷부분 내용을 복붙해주면 된다.

패스워드까지 입력해 주면, 이제 모든 환경설정이 완료되었다!!!

(추가)

만약 위 사진과 같은 500 : Internal Server Error 가 발생했다면, 주피터 노트북을 종료한 후, 다음의 명령어를 통해 업그레이드를 해주자.

pip install --upgrade jupyter

업데이트가 완료되고 다시 노트북을 실행하면 잘 될것이다.




테스트로 새 노트북 생성해서 torch를 실행해봤다. 잘 되는 것을 확인할 수 있다.






모든 환경 설정이 끝났다!!! 파이토치에 대해 공부를 시작해보자.

+) 재부팅 할 시 주피터 노트북 실행 방법

  1. Docker Desktop 실행
  2. 터미널에 docker start pt, docker attach pt 입력
  3. 터미널에 cd PyTorch/ 입력
  4. 터미널에 jupyter notebook --ip 0.0.0.0 --allow-root 또는 sh run_jupyter_docker.sh 입력
  5. 링크로 접속
profile
현실과 디지털 세계를 연결하는 개발자가 되고 싶어요

0개의 댓글