•
지금 현 단계는 외부컴퓨터에서 연결이 가능하게 ssh와 포트포워딩 까지 전부 세팅되어있는 상태이다.
•
여기에서 부터 외부환경에서 주피터노트북을 실행하도록 딥러닝 PC 환경을 구축을 해본다.
•
현 상태는 연구실 맥북에서 연구실에 있는 딥러닝 PC 접속화면
•
docker ps -a 를 눌러서 종료된 컨테이너 까지 확인해서
(base) smmc-dl@smmcdl:~$ sudo docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
111111111111 ubuntu:20.04 "bash" 20 minutes ago Exited (0) 20 minutes ago flamboyant_tesla
111111111114 nvidia/cuda:10.0-cudnn7-runtime-ubuntu16.04 "/bin/bash" 13 months ago Exited (1) 10 minutes ago base_container
111111111116 google/cadvisor:latest "/usr/bin/cadvisor -…" 13 months ago Exited (255) 13 months ago 0.0.0.0:55553->8080/tcp cadvisor
111111111117 nvidia/cuda:10.2-cudnn7-runtime-ubuntu16.04 "/bin/bash" 13 months ago Exited (0) 4 months ago basic_container
111111111115 hello-world "/hello" 14 months ago Exited (0) 14 months ago beautiful_mendeleev
(base) smmc-dl@smmcdl:~$
JavaScript
복사
•
나는 여기서 base_container란 이름을 가진 도커 환경을 복사하려고 한다
•
base_container 는 종료된 컨테이너이니 sudo docker start basic_container 를 먼저 실행하도록 하자
(base) smmc-dl@smmcdl:~$ sudo docker start basic_container
basic_container
(base) smmc-dl@smmcdl:~$
JavaScript
복사
•
docker ps 명령어를 통해 실행되었는지 확인하자
(base) smmc-dl@smmcdl:~$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
111111111117 nvidia/cuda:10.2-cudnn7-runtime-ubuntu16.04 "/bin/bash" 13 months ago Up 2 minutes 0.0.0.0:55555->22/tcp, 0.0.0.0:55554->8888/tcp basic_container
(base) smmc-dl@smmcdl:~$
JavaScript
복사
•
docker commit basic_container glory 명령어를 통해 이미지를 압축하자
◦
docker commit 압축할컨테이너명 새로운컨테이너명
(base) smmc-dl@smmcdl:~$ docker commit basic_container glory
sha256:5~~~~~~~~~~~~49
(base) smmc-dl@smmcdl:~$
JavaScript
복사
•
docker image 검색해서 잘 되었는지 체크하자
(base) smmc-dl@smmcdl:~$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
glory latest 511111111111 5 minutes ago 8.64GB
ubuntu 20.04 b11111111111 4 weeks ago 72.8MB
nvidia/cuda 10.0-cudnn7-runtime-ubuntu16.04 f11111111111 14 months ago 1.33GB
nvidia/cuda 10.2-base 111111111111 15 months ago 108MB
nvidia/cuda 10.2-cudnn7-runtime-ubuntu16.04 b11111111111 15 months ago 1.81GB
hello-world latest b11111111111 22 months ago 13.3kB
google/cadvisor latest e11111111111 3 years ago 69.6MB
(base) smmc-dl@smmcdl:~$
JavaScript
복사
•
그러면 다시 docker run을 활용해서 실행(glory는 컨테이너를 압축한 파일 이름, glory_container는 glory압축을 푼 컨테이너 이름
(base) smmc-dl@smmcdl:~$ docker run -it --name glory_container glory bash
root@ea018e05387e:/#
JavaScript
복사
•
마지막으로 jupyter notebook --ip=0.0.0.0 --allow-root --no-browser 명령어 실행
root@ea018e05387e:/# jupyter notebook --ip=0.0.0.0 --allow-root --no-browser
[I 03:58:13.523 NotebookApp] Serving notebooks from local directory: /
[I 03:58:13.523 NotebookApp] Jupyter Notebook 6.1.4 is running at:
[I 03:58:13.523 NotebookApp] http://ea0187e:8888/?token=bc5222
[I 03:58:13.523 NotebookApp] or http://127.0.0.1:8888/?token=bc521152
[I 03:58:13.523 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[C 03:58:13.526 NotebookApp]
To access the notebook, open this file in a browser:
file:///root/.local/share/jupyter/runtime/nbserver-21-open.html
Or copy and paste one of these URLs:
http://ea2387e:8888/?token=bc5fec1
or http://127.0.0.1:8888/?token=bc52
JavaScript
복사
•
용무가 다 끝나면 exit 명령어 입력해서 종료하기
^Z
[1]+ Stopped jupyter notebook --ip=0.0.0.0 --allow-root --no-browser
root@ea018e05387e:/# exit
exit
There are stopped jobs.
root@ea018e05387e:/# exit
exit
(base) smmc-dl@smmcdl:~$
JavaScript
복사
•
앞으로 실행시키려면 아래 명령어를 순서대로 입력(attach 할때 오래걸리면 ctrl+c)
sudo docker start glory_container
sudo docker attach glory_container
jupyter notebook --ip=0.0.0.0 --allow-root --no-browser
JavaScript
복사
안녕하세요
•
한국전자기술연구원 김영광입니다.
•
관련 기술 문의와 R&D 공동 연구 사업 관련 문의는 “glory@keti.re.kr”로 연락 부탁드립니다.
Hello
•
I'm Yeonggwang Kim from the Korea Electronics Research Institute.
•
For technical and business inquiries, please contact me at “glory@keti.re.kr”