주피터랩 원격 접속 서버 만들기1

이찬·2022년 10월 20일
1

이 글은 인공지능 학습용 주피터랩 서버를 내 컴퓨터에 만들어, 밖에서 언제든 어디서든 내 학습 현황 등을 확인하고 싶어서 삽질하다가 나와 같은 사람이 있을까해서 만든 글이다.
도움이 되었으면 한다.

먼저 cmd 창을 열어 아래 커맨드를 실행해 주피터랩을 설치한다.

pip install jupyterlab

주피터랩이 설치 되었다면, 아래의 커맨드를 실행해 config 파일을 만들어 준다.

jupyter lab --generate-config

이 명령어가 실행되면 윈도우의 경우 C:/Users/USER/.jupyter 경로에 jupyter_lab_config.py라는 이름으로 config 파일이 만들어졌을 것이다.

이 config 파일은 jupyter lab 설정 파일로 여러가지 설정이 가능하다.
나의 경우 아래와 같이 설정하였다.

c = get_config()  # noqa
c.JupyterApp.config_file_name = 'jupyter_lab_config.py'
c.ServerApp.allow_origin = '*'
c.ServerApp.notebook_dir = 'C:/Users/USER/jupyterlab_root/'
c.ServerApp.ip = 'your local ip'
c.ServerApp.open_browser = False
c.ServerApp.port = 3333
c.ServerApp.password = 'your password hash'

위의 설정이 무엇인지 하나하나 알려주겠다.

  1. c = get_config()
    config 객체를 만드는 함수이다.

  2. c.JupyterApp.config_file_name = 'jupyter_lab_config.py'
    어떤 config 파일을 쓸지 그 경로를 적어주면 된다. 나의 경우 그냥 기본을 사용하기에 jupyter_lab_config.py로 넣어두었다.

  3. c.ServerApp.allow_origin = '*'
    이건 외부에서 접속하는 것을 허용할 것인지 묻는 옵션인데, 나는 원격 접속 서버를 만들 것이기 때문에 *표를 넣어 허용했다.

  4. c.ServerApp.notebook_dir = 'C:/Users/USER/jupyterlab_root/'
    주피터랩을 키면 왼쪽에 나오는 파일브라우저의 루트를 정해주는 옵션이다. 근데 이 설정을 해도 터미널을 통해 당신 컴퓨터 어디에도 접속 가능하니 조심하자.

  5. c.ServerApp.ip = 'your local ip'
    당신 컴퓨터의 ip를 넣는다. 여기서 조심할 것은 외부 ip가 아니라 내부 ip를 넣어야 한다. 내부 외부 ip의 개념을 모를 경우 몰라도 된다. 다음 게시물에서 설명하겠다.
    일단 cmd 창을 열고 ipconfig를 했을 때 나오는 IPv4주소를 그대로 넣어두자. pc의 경우 192.168.xx.xx 이런식일 것이다.

  6. c.ServerApp.open_browser = False
    주피터랩을 실행할 때 브라우저를 킬지말지 선택하는 옵션이다. 나는 그냥 안켜지게 해놨다.

  7. c.ServerApp.port = 3333
    주피터랩을 접속할 때 사용할 포트 번호를 지정해주는 옵션이다.

  8. c.ServerApp.password = 'your password hash'
    이건 주피터랩에 접속할 때 사용할 비밀 번호를 설정하는 옵션이다. 바로 자세히 설명하겠다.

cmd 창을 열고 아래와 같이 입력한다. 나는 예시를 위해서 temp라고 했지만, 여러분은 여러분이 원하는 비밀번호를 입력하길 바란다.

>>> from notebook.auth import passwd
>>> passwd()
Enter password:temp (실제 입력시에는 안보인다.)
Verify password:temp (실제 입력시에는 안보인다.)
'argon2:$argon2id$v=19$m=10240,t=10,p=8$5uKI71sd9EQ6SChZMRt1qA$hc7R2Ea+dCoci9uYidjiFN0D5uxG1lrtY3Kyf/G25Rc'

완료하면 argon2:~~~하면서 뭔가 나온다. 이게 바로 해시값이다. 이걸 그대로 복사해서

c.ServerApp.password = 'argon2:$argon2id$v=19$m=10240,t=10,p=8$5uKI71sd9EQ6SChZMRt1qA$hc7R2Ea+dCoci9uYidjiFN0D5uxG1lrtY3Kyf/G25Rc' 

이런식으로 두면 비밀번호 설정 완료다.

이제 모든 주피터랩 설정이 완료되었으니 주피터랩을 열어보자.

매우 간단하다. cmd 창을 열고

jupyter lab

이렇게만 치면 주피터랩을 실행할 수 있다. 다만 옵션으로 브라우저가 자동으로 열리지 않게 해놨으므로 당신의 설정한 ip와 포트번호를 이용해서 크롬을 통해 접속해보자. 이 때 cmd 창을 끄면 서버가 닫히므로 끄지 않고 접속하자.

크롬 주소창에 192.168.xx.xx:3333 이렇게 치면 주피터랩에 접속할 수 있다.

이렇게 첫번째 게시글이 끝났다. 다음 글에서는 서버 설정 뉴비 절단기인 포트포워딩과 고정 ip 설정에 대해서 설명하겠다.

profile
인공지능 초보

0개의 댓글