도커 입문 수업을 듣고 중요한 내용을 정리했습니다.
개인 공부 후 자료를 남기기 위한 목적이므로 내용 상에 오류가 있을 수 있습니다.
도커(docker)로 주피터 노트북 서버 만들기
docker를 통해 주피터 노트북 서버를 만드는 연습을 하고자 한다.
docker & jupyter notebook
docker container 내부에서 jupyter notebook이 실행되는 폴더인 /home/jovyan 폴더를 호스트 PC의 폴더와 연결하여 호스트 PC에서 docker를 실행하는 폴더에 있는 주피터 노트북 파일을 작업할 수 있다. (docker 활용)
[1단계]
ubuntu에 주피터 노트북이 실행되는 폴더와 연결할 2021_LEARN 폴더가 있는지 확인한다.
[2단계]
docker container를 실행하면서 /home/ubuntu/2021_LEARN 폴더와 컨테이너 상에서 주피터 노트북이 실행되는 폴더인 /home/jovyan/work 폴더를 연결하는 것이다.
*참고
- jupyter/datascience-notebook은 주피터 노트북의 공식 이미지명이다.
- -p 옵션을 사용한 것은 외부에서도 퍼블릭 IP:8888로 접근할 수 있도록 포트를 열어두기 위함이다.
[3단계]
외부에서 docker container로 실행되는 주피터 노트북 폴더에 접근하려면 퍼블릭 IP:8888 포트로 접속해야 한다.
단, 접속 이전에 반드시 EC2 서버의 보안그룹 인바운드 규칙에서 8888번 포트가 오픈되어 있어야 한다.
[4단계]
docker container에서 실행되는 주피터 노트북 폴더에 접속하려면 토큰(token) 정보가 필요하다.
[5단계]
이는 "docker logs CONTAINER ID" 명령으로 해당 docker container의 log에서 주피터 노트북의 token 정보를 알 수 있다. (ex. token= 이후에 나오는 토큰 값을 참조할 것)
[6단계]
위에서 얻은 토큰 값을 Log in 입력창에 넣어서 주피터 노트북에 접속하면 된다.
[7단계]
이처럼, 외부에서 퍼블릭 IP로 docker container 안에서 실행되는 주피터 노트북에 접속하여 해당 폴더의 파일을 작업할 수 있다.
'Docker' 카테고리의 다른 글
Docker - docker compose 기본 사용법 (2) | 2021.12.22 |
---|---|
Docker - 컨테이너와 컨테이너를 연결하기 (0) | 2021.12.19 |
Docker - docker 기타 명령 (0) | 2021.12.18 |
Docker - dockerfile 작성을 위한 주요 명령 (0) | 2021.12.16 |
Docker - docker 주요 명령 (0) | 2021.12.14 |
댓글