안녕하세요!
A 부터 Z 까지 공유하는 SA2Z(Share A to Z) 블로그 입니다.!
오늘은 파이썬코딩에 유용한 툴인 주피터 랩(노트북)과 관련한 내용을 공유드리려합니다.!
웹기반인 주피터랩을 실행한 pc,노트북에서만 쓴다는건 참 아쉬운 일일텐데요!
주피터랩(노트북)을 실행하고, 외부에서 원격으로 접속할 수 있도록 설정하는 방법에대해 정리해보려 합니다.
# 주피터랩 설치
# 주피터 랩 원격설정
# 실행
# 주피터랩 설치
주피터랩(jupyter lab)은 주피터노트북(jupyter notebook)이 파일목록을 보여주는 탭과 별도의 탭들을 별도로 생성하는것과 대비해서 좌측에 경로트리를 두고, 하나의탭 안에서 소규모탭들을 추가하면서 개발할 수 있는 발전된 개발도구 입니다.
[주피터 노트북] 아래와 같이 파일경로를 볼수 있는 탭, 각각의 노트북파일당 브라우저 탭을 추가하여 개발진행하는 방식
[주피터랩] - 아래외 같이 브라우저내 1개의 탭 안에서 왼편에 경로표기, 오른편에 노트북파일당 내부 탭 생성으로 개발진행
주피터랩의 경우 확장프로그램(extension)을 통해 부가적인 기능을 손쉽게 추가할 수 있습니다, 메모리에 올라가있는 변수들을 모니터링하거나 용량을 볼 수도 있고, 개발에 도움이될만한 툴들이 많이 있으니 주피터랩을 활용하시는게 좋습니다.
설치방법은 리눅스 우분투의 경우 패키지 설치방법이 가장 간단합니다.
$ sudo apt-get update 패키지설치 사이트목록을 업데이트하는 개념
$ sudo apt-get install jupyterlab -y 끗.
# 주피터랩 원격 설정
주피터랩은 주피터 노트북에서 시작했기 때문에 명령어는 주피터 노트북으로 실행하면 됩니다.
최초 주피터랩&노트북은 외부와 무관하게 로컬호스트에서만 실행되도록 디폴트 되어 있습니다.
외부와의 접속을 위한 제약사항을 만들고, 몇가지 설정 후 호스팅을하면 외부에서도 붙을 수 있습니다.
* 설정파일 생성
$ jupyter notebook --generate-config -> 파일생성 /home/[username]/.jupyter/jupyter_notebook_config.py
* 외부접속시 비밀번호 설정
$ jupyter notebook passward
- 두번의 비밀번호 입력시 /home/[username]/.jupyter/jupyter_notebook_config.json 생성
*비밀번호 암호화 내용 확인 -> 빨간부분 복사,
$ cat /home/[username]/.jupyter/jupyter_notebook_config.json
>> {
"NotebookApp": {
"password": "sha1:********"
}
* /home/[username]/.jupyter/jupyter_notebook_config.py 파일 내용 수정 - 외부접속아이피,비밀번호,포트
- 외부IP제한 : c.NotebookApp.ip = '*' // 모든 외부 IP에서 접속 허용
- 비밀번호 설정 : c.NotebookApp.password = 'sha1:************' // 위에서 암호화된 내용을 붙여넣기
- 포트설정 : c.NotebookApp.port=8888 // 원하는 포트번호 최대 5자리로 설정
# 주피터 랩 실행 & 원격접속
이제 준비는 끝났으니, 호스팅을 하려는 pc의 터미널에서 주피터 랩을 실행하기만 하면 된다.
$ jupyter lab
* $ jupyter lab --allow-root 만약 개발용도커컨테이너를 만들었을경우 파일권한관련 이슈가 있으므로 뒤에 옵션을 붙여주면 됩니다.
성공적으로 호스팅이 됬을경우, 호스팅한 서버의 ip와포트번호로 타 pc브라우저를 통해 접속하면 됩니다.
주소창 - ___.___.___.___ :8888 -> 비밀번호 입력
1개의 서버를 여러명과 동시에 쓸경우나, 프로젝트별 필요한패키지가 다를경우 별도의 주피터랩을 열어서 포트값만 달리해서 개발환경을 구성하는것도 하나의 방법이 될 것 같네요!