본문 바로가기
Python/환경 설정

[Setting] jupyter notebook 원격 접속

by beeny-ds 2022. 8. 19.

들어가며,,

네트워크 설정 완료한 서버를 이용해 분석하기 위해 jupyter notebook 원격 접속이 가능하도록 세팅해야한다.(물론 local에서도 가능하다.) 세팅이 완료되면 해당 pc가 아닌 곳에서 원격 접속하여 python을 활용한 분석을 할 수 있다. 이때 버전 충돌 방지를 위해 docker container를 새로 만들어 진행할수도 있지만 그 부분은 생략한다. 본 포스팅에서는 어떻게 원격 접속을 할 수 있는지 그 방법에 대해 다뤄보겠다.


 

설치 과정

1. config 파일 생성

$jupyter notebook --generate-config.

# /home/v2j/.jupyter/jupyter_notebook_config.py

생성시 경로 밑에 위와 같은 config.py 파일이 생성된다.

 

2. ipython으로 암호생성

$ipython


다음과 같이 입력해주는 이유는 jupyter notebook에 암호를 걸어 함부로 접근하지 못하게 하기 위해서 이다. 모든 데이터 분석은 보안이 중요하다 :) 위와 같은 커멘드를 입력하면 아래 사진과 같은 화면이 나올 것이다.

> out[2] 에 나오는 'sha1:~~~'를 다 복사해준 뒤 'exit()' 으로 나가주자.
> 'sha1:~~~'는 내가 설정해준 암호이다.

3. jupyter_notebook_config.py(환경설정) 파일 수정

$sudo vi ~/.jupyter/jupyter_notebook_config.py

1번에서 만들어준 config.py 파일을 열어 원격 접속을 허용하도록 수정해주자.

> 위 사진과 같이 해당 부분을 " * "로 바꿔준다.

추가로 아래에 사용하고자 하는 서버의 정보를 입력해준다.
> c.NotebookApp.ip = ~~~    # 접속할 ip 입력(서버 ip)
> c.NotebookApp.open_browser = False    # 원격 실행이므로 브라우저 실행X
> c.NotebookApp.password = 'sha ~~'    # 미리 복사해놓은 암호화된 비밀번호 붙여넣기
> c.NotebookApp.password_required = True    # 비밀번호 요구
> c.NotebookApp.port = 8888    # 포트 번호

tip. 쉽게 찾기 위해서는 'esc → :c.NotebookApp.password' 와 같이 해주면 'c.NotebookApp.password' 에 해당하는 line으로 이동한다. (like ctrl + f 와 같은 기능

 

4. jupyter notebook 실행
# 이렇게 실행해도 되지만 추천하지 않는다. 영구적으로 실행시켜 놓아야 편하다.
$jupyter notebook

# 이렇게 실행하면 jupyter notebook을 강제로 종료하기 전까지는 꺼지지 않는다.
$nohup jupyter notebook

# 또는 아래와 같이 실행하자. 자세한 사항은 아래에 추가 설명을 기입하겠다.
$screen -r jupyter

> jupyter service를 screen에 띄워 어떤 ip에서 사용중인지 모니터링 가능 + jupyter notebook 실행
>
'ctrl + a + d' 순서대로 누르면 나가진다. 이렇게 나가게 되면 jupyter notebook이 셧다운 되지 않는다.
>
'ctrl + c' 를 누르면 jupyter notebook이 셧다운 된다.

 

5. 설정 끝.!


 

마치며,,

여러 사람이 하나의 서버를 사용해야 한다면 동일한 환경의 Docker image를 이용하여 사용자의 수 만큼 container를 만들어 사용하는 걸 추천한다. 만약 그렇게 하지 않는다면 다른 사용자의 설정으로 인한 버전 충돌 및 서버에 직접적인 영향으로 뭔가 문제가 생길 것이다. 

반응형

'Python > 환경 설정' 카테고리의 다른 글

Triton Server 환경 구축하기  (0) 2024.02.20
NVIDIA Triton 에 대한 고찰  (1) 2023.10.29

댓글