원격 서버에서 docker로 jupyter notebook 실행시키기

TaeJun Park·2022년 11월 13일
0

먼저, ssh 등의 방법을 이용하여 서버에 접속한 뒤 CLI 창에서 다음과 같은 순서로 진행한다.


  1. (아마도 최소 용량의 jupyter notebook으로 추정되는) minimal-notebook image를 pull해온다.
docker pull jupyter/minimal-notebook

  1. pull해온 image를 기반으로 container(일종의 instance)를 생성한다.
docker run -it -p 8800:8888 \
-e GRANT_SUDO=yes --user root \
--name jupyter-notebook \
-v $(pwd):/home/jovyan/work jupyter/minimal-notebook 
  • -it : container 생성 시, 명령어 실행(interactive 모드?)
  • -p : 호스트 포트 번호 : container 포트 번호
  • -e : 해당 이미지와 관련된 권한 설정(여기에서는, jupyter notebook에 root 권한 설정)
  • --user : container에 root 권한 할당
  • --name : container의 이름
  • -v : 로컬에 위치한 파일을 container 내부로 전송하는 기능(여기에서는 현재 디렉토리의 파일들을 container 내부의 /home/jovyan/work 아래로 보낸다는 의미)
  • -d : 이 설정을 넣어주면, 터미널을 닫아도 백그라운드에서 돌아감

  1. Jupyter notebook container 내부로 접속
docker exec -it jupyer-notebook /bin/bash

  1. Jupyter notebook 비밀번호 생성
ipython 
from notebook.auth import passwd
passwd()
Enter password: #비밀번호 입력
Verify password: #비밀번호 입력

  1. Jupyter notebook 비밀번호 설정
sudo apt-get update
sudo apt-get install vim -y
sudo vim ~/.jupyter/jupyter_notebook_config.py
#c.NotebookApp.password_required 을 True 로 수정한 뒤, 주석을 제거한다.
c.NotebookApp.password_required = True

# c.NotebookApp.password 의 '' 부분에, 위에서 생성한 passwd 를 입력한 뒤, 주석을 제거한다.
c.NotebookApp.password = ''
exit

  1. Jupyter notebook Conatiner 재실행
docker restart jupyter-notebook

  1. Jupyter notebook 웹 접속
예를 들어) 127.0.0.1(서버IP주소):8800(로컬포트번호)

그 외 많이 쓰이는 docker 명령어

  • 이미지 목록 확인
docker images
  • 작동하고 있는 컨테이너 확인하는 법
docker ps # -a 를 추가하게 되면 멈춰있는 컨테이너도 확인 가능 
  • 작동하고 있는 컨테이너 멈추는 법
docker stop 컨테이너 이름
  • 멈춘 컨테이너 다시 시작시키는 법
docker restart 컨테이너 이름
  • 컨테이너 삭제
docker rm 컨테이너 이름 # -f 를 추가하게되면, 작동하고 있는 컨테이너도 지울 수 있음
  • 이미지 삭제
docker rmi 이미지 이름
profile
summarize what I learned

0개의 댓글