Docker 컨테이너에서 jupyter notebook 사용하기

성연·2024년 2월 15일
0

Docker

목록 보기
5/8

파이썬 도커 기본 이미지를 활용하여 jupyter notebook을 사용할 수 있는 도커 컨테이너를 생성하는 방법에 대해 정리해보고자 한다.


1. Python 3.9 도커 이미지 다운로드하기

$ docker pull python:3.9


2. 도커 컨테이너 생성하기

# docker run: python:3.9 도커 이미지에 새로운 도커 컨테이너를 생성할게
# --name: 컨테이너이름은 python_3_9 로 만들게
# -dt: 컨테이너는 백그라운드에서 실행시킬거고(-d), 터미널을 사용할 수 있게 해줘(-t)
$ docker run --name python_3_9 -dt python:3.9


3. 도커 컨테이너로 진입하기

# docker exec: execute, python_3_9 도커 컨테이너로 진입할게
# -it: 터미널을 통해 입출력이 가능하게 해줘
# /bin/bash: bash 쉘(shell)을 사용할거야
$ docker exec -it python_3_9 /bin/bash

4. Jupyter 설치하기

$ pip3 install jupyter

5. 도커 컨테이너 이미지화하기

jupyter를 설치한 컨테이너의 상태를 유지하기 위해 컨테이너를 이미지화한다.

(해당 명령어는 호스트(Mac) 쉘에서 입력한다.)

# docker commit 컨테이너이름(또는 컨테이너ID) 생성할이미지이름:태그
docker commit python_3_9 python_jupyter:3.9


[OPTION] 6. 생성한 도커 이미지 컨테이너화 및 port 지정

  • Jupyter notebook의 기본 포트는 8888이다.
    • 0431 포트로 접속하면 자동으로 jupyter notebook으로 연결시키도록 포트포워딩하였다.
# docker run: python_jupyter:3.9 도커 이미지에 새로운 도커 컨테이너를 생성할게
# --name: 컨테이너이름은 python_jupyter_3_9 로 만들게
# -p: 도커 컨테이너 내부에서 컨테이너포트로 리스닝하고 있는 서버를
#     호스트 컴퓨터에서 호스트포트로 접속할 수 있도록 설정할게
#     호스트포트:컨테이너포트
# -dt: 컨테이너는 백그라운드에서 실행시킬거고(-d), 터미널을 사용할 수 있게 해줘(-t)
$ docker run -p 0431:8888 --name python_jupyter_3_9 -dt python_jupyter:3.9

7. 도커 컨테이너 실행하기

$ docker exec -it python_jupyter_3_9 /bin/bash

8. Jupyter 환경 셋팅하기

  • Jupyter 패스워드 설정하기: Jupyter notebook 접속 시 token 대신 패스워드를 통해 접속 가능해짐
$ jupyter notebook password


9. Jupyter notebook 실행하기

$ jupyter notebook --no-browser --allow-root --ip=0.0.0.0 --port=8888
  • 호스트(맥북)의 웹 브라우저에서 다음 주소로 접속한다: http://localhost:0431 또는 http://127.0.0.1:0431

0개의 댓글