환경
- 실행 환경 : 리눅스 (윈도우, 맥도 가능)
- 파이썬이 설치되어있어야 합니다.
- jupyter 포트 (default : 8888 / 커스텀 가능) 가 점유중이면 안됩니다.
- jupyter 포트 (default : 8888 / 커스텀 가능) 가 외부에서 접근할 수 있어야 합니다.
설치 및 설정
먼저, jupyter를 설치해줍니다.
1
2
pip install jupyter
pip install jupyterlab
jupyter 설정 파일을 생성해주세요.
생성된 jupyter 설정 파일은 jupyter --config-dir
명령어로 확인할 수 있습니다.
1
2
3
4
5
6
7
# jupyter 설정 파일 생성
jupyter lab --generate-config
>> Writing default config to: /root/.jupyter/jupyter_lab_config.py
# jupyter 설정 파일 경로 확인
jupyter --config-dir
>>> /root/.jupyter
jupyter 설정 파일 경로로 이동하여 “jupyter_notebook_config.py” 파일을 편집기로 열어줍니다.
1
2
3
4
5
# 설정 파일 경로로 이동
cd /root/.jupyter
# 편집기로 설정파일 열기
nano ./jupyter_lab_config.py
파일에 아래 내용을 추가해줍니다.
위치는 c = get_config()
아래면 상관 없습니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
c = get_config()
# 주피터 랩의 경우
c.ServerApp.ip = '0.0.0.0' # 접근 허용 IP
c.ServerApp.port = 8888 # 주피터 포트번호 / 다른 서비스와 겹치지 않게
c.ServerApp.open_browser = False # 실행시 브라우저를 오픈할 것인지
c.ServerApp.notebook_dir = '/' # 주피터가 실행되는 root 경로
c.ServerApp.password_required = False # 접속시 비밀번호 요구하지 않음
c.ServerApp.max_buffer_size = 메모리용량 # 바이트 단위 / 기본 : 536870912
c.ContentsManager.allow_hidden = True # 히든 파일(.env 등) 접근
# 주피터 노트북의 경우
c.NotebookApp.ip = '0.0.0.0' # 접근 허용 IP
c.NotebookApp.port = 8888 # 주피터 포트번호 / 다른 서비스와 겹치지 않게
c.NotebookApp.open_browser = False # 실행시 브라우저를 오픈할 것인지
c.NotebookApp.notebook_dir = '/' # 주피터가 실행되는 root 경로
c.NotebookApp.password_required = False # 접속시 비밀번호 요구하지 않음
c.NotebookApp.max_buffer_size = 메모리용량 # 바이트 단위 / 기본 : 536870912
c.ContentsManager.allow_hidden = True # 히든 파일(.env 등) 접근
설정은 끝났습니다. 주피터를 실행시켜보도록 합니다.
추가로 실행시에는 –allow-root 옵션을 줘야 하며, 백그라운드 실행을 위한 nohup을 더하겠습니다.
1
nohup jupyter lab --allow-root &
사용
그러면 외부에서 접근해보도록 하죠.
인터넷 브라우저 창에서 “http://주피터실행중인서버ip:포트번호” 를 입력하고 이동합니다.
첫 화면에서는 비밀번호 입력 혹은 생성을 하라고 나옵니다.
아래 비밀번호 설정하는 부분을 보면 토큰값을 넣어야 비밀번호 생성이 가능한데요,
토큰값은 서버에서 아래 명령어로 확인이 가능합니다.
1
2
3
4
jupyter server list
>>> Currently running servers:
>>> http://IP주소:8888/?token=토큰값 :: /root/.jupyter
이 중 token 파라미터에 담긴 토큰값을 확인해주시면 됩니다.
다시 브라우저로 돌아와서, 아래에 토큰값을 넣고, 비밀번호를 설정해줍니다.
이후 접속부터는 비밀번호만으로도 로그인을 할 수 있습니다.
주피터를 로그인하면 그 이후는 일반적으로 로컬에서 실행시킨 주피터와 동일하게 사용할 수 있습니다.
Reference
메모리 용량 늘리기 : https://discourse.jupyter.org/t/increase-ram-for-jupyter-notebook/20687