WinGyu_coder

Ubuntu Linux 우분투 리눅스에서 Jupyter 주피터 노트북 설치 및 접속하기 본문

리눅스, 서버

Ubuntu Linux 우분투 리눅스에서 Jupyter 주피터 노트북 설치 및 접속하기

WinGyu 2023. 12. 13. 13:12

서버에서 Jupyter Notebook을 사용하는 방법에는 몇 가지 주요 단계가 있습니다. 여기서는 일반적인 방법을 안내드리겠습니다.

1. 서버에 접속하기

  • 서버에 SSH(Secure Shell)을 사용하여 원격으로 접속합니다. 이는 터미널 또는 커맨드 프롬프트를 사용하여 수행할 수 있습니다.
  • 예시 명령어: ssh 사용자명@서버주소

2. Jupyter Notebook 설치

  • 서버에 Jupyter Notebook이 설치되어 있지 않다면, Python과 pip를 사용하여 설치할 수 있습니다.
  • 설치 명령어: pip install jupyter

3. Jupyter Notebook 실행

  • Jupyter Notebook을 실행하기 전에, 노트북 서버가 돌아갈 디렉토리로 이동합니다.
  • 실행 명령어: jupyter notebook 또는 특정 포트를 지정하고 싶다면 jupyter notebook --port=8888와 같이 실행합니다.

4. 원격 액세스 설정

  • 서버에서 Jupyter Notebook을 실행하면, 일반적으로 로컬 머신에서 직접 액세스할 수 없습니다. 따라서 원격 액세스를 설정해야 합니다.
  • Jupyter Notebook 설정 파일을 생성하고 편집합니다.
    • 설정 파일 생성: jupyter notebook --generate-config
    • 설정 파일을 편집하여 비밀번호, IP 주소, 포트 등을 설정합니다.
  • 필요한 경우, 서버의 방화벽 설정을 조정하여 해당 포트에 대한 액세스를 허용합니다.

Jupyter Notebook의 원격 액세스 설정은 서버에서 실행 중인 Jupyter Notebook 서버에 다른 컴퓨터에서 접근할 수 있도록 하는 과정입니다. 이를 설정하는 주요 단계는 다음과 같습니다:

1. 설정 파일 생성

  • 먼저, Jupyter Notebook의 설정 파일을 생성해야 합니다. 이 파일에는 서버의 구성과 관련된 옵션이 포함됩니다.
  • 터미널에서 jupyter notebook --generate-config 명령어를 실행하면, Jupyter의 홈 디렉토리에 jupyter_notebook_config.py 파일이 생성됩니다.

2. 설정 파일 편집

  • 생성된 jupyter_notebook_config.py 파일을 편집기로 열고, 다음과 같은 설정을 추가하거나 변경합니다:

    • IP 주소 설정: Jupyter 서버가 외부에서 접근 가능하도록 IP 주소를 설정합니다. 일반적으로 '0.0.0.0'으로 설정하여 모든 네트워크 인터페이스에서 접근을 허용합니다.

      c.NotebookApp.ip = '0.0.0.0'
    • 포트 설정: 서버가 사용할 포트를 설정합니다. 기본적으로 8888 포트를 사용하지만, 다른 포트를 지정할 수도 있습니다.

      c.NotebookApp.port = 8888
    • 비밀번호 설정: 보안을 위해 접속 시 비밀번호를 요구하도록 설정할 수 있습니다. 이를 위해 먼저 Jupyter Notebook에서 제공하는 명령어를 사용하여 해시된 비밀번호를 생성한 후, 이를 설정 파일에 추가합니다.

      from notebook.auth import passwd
      passwd()

      이 명령어를 실행하면 비밀번호를 두 번 입력하라는 메시지가 나타납니다. 이후 생성된 해시 값을 jupyter_notebook_config.py에 다음과 같이 추가합니다:

      c.NotebookApp.password = u'생성된 해시 값'

3. 방화벽 설정 (필요한 경우)

  • 서버의 방화벽이 활성화되어 있고, 특정 포트에 대한 접근을 제한하고 있다면, Jupyter Notebook이 사용하는 포트(예: 8888)에 대한 액세스를 허용해야 합니다.
  • 이는 서버의 방화벽 관리 도구를 사용하여 설정할 수 있습니다.

4. Jupyter Notebook 재시작

  • 설정을 마친 후 Jupyter Notebook 서버를 재시작합니다. 이렇게 하면 새로운 설정이 적용됩니다.

5. 원격에서 접근

  • 설정이 완료되면, 원격 시스템의 웹 브라우저에서 http://서버의IP주소:포트 (예: http://192.168.1.100:8888)를 통해 Jupyter Notebook에 접근할 수 있습니다. 처음 접속 시 설정한 비밀번호를 입력해야 합니다.

이 과정을 통해 Jupyter Notebook 서버를 원격에서 안전하게 사용할 수 있게 됩니다. 보안상의 이유로, 비밀번호 설정과 SSH 터널링 같은 추가적인 보안 조치를 취하는 것이 좋습니다.

5. SSH 터널링 사용

  • 보안을 위해, SSH 터널을 통해 Jupyter Notebook에 접속하는 것이 좋습니다.
  • SSH 터널 명령어: ssh -N -f -L localhost:8888:localhost:8888 사용자명@서버주소
  • 이 명령어는 로컬 머신의 8888 포트와 서버의 8888 포트를 연결합니다.

6. 브라우저에서 접속

  • 이제 로컬 머신의 웹 브라우저에서 localhost:8888로 접속하여 Jupyter Notebook 인터페이스에 접근할 수 있습니다.
  • 최초 접속 시, Jupyter Notebook 설정 파일에 설정한 비밀번호를 입력해야 합니다.

주의사항

  • 서버의 보안 설정, 사용자 권한 및 네트워크 정책에 따라 추가적인 구성이 필요할 수 있습니다.
  • Jupyter Notebook의 원격 사용은 보안상의 위험이 있을 수 있으므로, 암호화와 SSH 터널링을 사용하여 보안을 강화하는 것이 중요합니다.

GPT가 작성하였습니다.