개미들을 위한 퀀트 자동 매매 프로그램 개발자 블로그입니다. 프로그래밍과 퀀트 투자를 합니다.

방구석퀀트

네이버카페 : 방구석 퀀트 놀러오세요^^ https://cafe.naver.com/conerquant 가입해 주세요.

2019년 5월 8일 수요일

Synology NAS에 Docker로 Jupyter Notebook 설치해 어디서든 코딩하기

내 데스크탑이나 노트북이 아닌 Synology NAS에 Python 개발 환경을 설치하고 jupyter Notebook으로 세계 어디에서든 접속해 개발 할 수 있게 해 보겠습니다.

1. 시놀로지 DSM 페키지 센터에서 docker 설치 후 열기
2. Docker 열기를 클릭한 후 왼쪽 메뉴 중 레지스트리를 선택하고 검색창에 jupyter를 입력합니다. 아래와 같이 제일 첫 줄에 나오는 jupyter/datascience-notebook 을 더블 클릭하고 태그 선택에서는 'latest'를 선택합니다. 왼쪽 이미지 메뉴에 들어가 보면 다운로드가 진행 중인 것을 확인할 수 있습니다.

3. 컨테이너 설정

위 이미지를 더블클릭 하여 컨테이너 설정을 하겠습니다. 기본 셋팅은 그대로 두고 고급 설정을 클릭합니다.

컨테이너는 가상환경이 입니다. 볼륨 항목에서 실제 NAS의 물리적 저장공간과 연결되는 폴더를 지정할 수 있습니다. 원하는 폴더를 지정하세요.

그리고 마운트 경로에는 컨테이너 가상환경에서 위에서 선택한 실제 물리적 폴더에 접근하기 위한 폴더를 지정합니다.
포트 설정 탭에서는 로컬포트를 기존 '자동'에서 '8888'로 변경 합니다.


다음을 눌러 요약을 확인 후 적용을 클릭합니다.

왼쪽 개요 메뉴에서 컨테이너가 잘 동작하고 있는 것을 확인 할 수 있습니다.



4. Jupyter 접속

http://NAS주소:8888 을 인터넷 주소창에 입력하고 연결합니다.


아쉽게도 접속이 되지 않습니다. DSM 제어판 -> 외부 엑세스 -> 라우터 구성에 가서 8888 포트를 추가 생성 해주어야 합니다. 적용 후 꼭 저장을 눌러 주어야 적용이 됩니다.

다시 Jupyter에 접속해보겠습니다. 접속이 잘 되는 것을 확인할 수 있습니다!

접속만 된다고 끝난 것은 아닙니다. Jupyter Notebook이 실행될 때 토큰이라는 보안문자 가 자동 생성됩니다. 위 입력창에 그 토큰을 입력해야 하는데 토큰은 다시 DSM의 docker로 가서 왼쪽 메뉴의 '비디오 형식' -> 해당 컨테이너 선택 -> '세부 사항' 클릭 -> '로그' 탭 클릭 -> 토큰에 해당되는 값 복사 합니다.


복사한 토큰 값을 Jupyter 연결 창에서 아래와 같이 Setup a Password의 Token에 붙여넣기 하고, 향후 복잡한 토큰 값이 아닌 패스워드 입력으로 접속하기 위해 새로운 패스워드를 New Password에 입력합니다.

 자 이제 전세계 어디에서든 나만의 Python 개발 공간에 접속해서 사용 할 수 있게 되었습니다!



댓글 2개:

  1. 안녕하세요!
    이 포스트를 이용해서 저도 제 나스의 도커에 주피터 노트북을 설치했어요. 도움이 많이 되었는데요
    혹시, 파이썬 라이브러리들 설치는 잘 되시나요?
    저는 통신때문인지 잘 안되네요 ㅠㅠ

    답글삭제
  2. 어....... 이거 그러면 NAS의 구린 CPU를 이용하는거 아닌가요?

    답글삭제

가장 많이 본 글