웹사이트 검색

Ubuntu 22.04에서 Python 3용 Jupyter Notebook을 설정하는 방법


소개

Jupyter Notebook은 대화형 컴퓨팅을 위한 명령 셸을 웹 애플리케이션으로 제공합니다. 이 도구는 Python, Julia, R, Haskell 및 Ruby를 비롯한 여러 언어와 함께 사용할 수 있습니다. 데이터, 통계 모델링 및 기계 학습 작업에 자주 사용됩니다.

이 튜토리얼은 로컬로 또는 Ubuntu 22.04 서버에서 실행되도록 Jupyter Notebook을 설정하는 과정을 안내하고 노트북에 연결하고 사용하는 방법을 알려줍니다. Jupyter 노트북(또는 단순히 노트북)은 재현 가능한 연구를 발표하고 공유하는 데 도움이 되는 컴퓨터 코드와 서식 있는 텍스트 요소(단락, 방정식, 그림, 링크 등)를 모두 포함하는 Jupyter 노트북 앱에서 생성된 문서입니다.

이 가이드를 마치면 로컬 컴퓨터 또는 원격 서버에서 실행되는 Jupyter Notebook을 사용하여 Python 3 코드를 실행할 수 있습니다.

전제 조건

이 자습서를 따르려면 Python 3 프로그래밍 환경과 Python venv 모듈이 필요합니다.

  • 로컬 컴퓨터에서
  • Ubuntu 서버에서.

이 자습서의 모든 명령은 루트가 아닌 사용자로 실행해야 합니다. 명령에 루트 액세스가 필요한 경우 앞에 sudo가 옵니다. Ubuntu 22.04의 초기 서버 설정에서는 사용자를 추가하고 sudo 액세스 권한을 부여하는 방법을 설명합니다.

1단계 - Jupyter 노트북 설치

이 섹션에서는 pip를 사용하여 Jupyter Notebook을 설치합니다.

Jupyter Notebook을 설치하려는 Python 3 프로그래밍 환경을 활성화합니다. 이 예에서는 my_env에 설치하므로 해당 환경의 디렉토리에 있는지 확인하고 다음과 같이 활성화합니다.

  1. cd ~/environments
  2. . my_env/bin/activate

다음으로 pip가 최신 버전으로 업그레이드되었는지 확인할 수 있습니다.

  1. pip install --upgrade pip

이제 다음 명령으로 Jupyter Notebook을 설치할 수 있습니다.

  1. pip install jupyter

이 시점에서 Jupyter Notebook은 현재 프로그래밍 환경에 설치됩니다.

다음 선택적 단계는 SSH 터널링을 사용하여 웹 인터페이스의 서버 설치를 연결하는 단계입니다.

2단계(선택 사항) - SSH 터널링을 사용하여 서버 설치에 연결

원격 서버에 Jupyter Notebook을 설치한 경우 SSH 터널링을 사용하여 Jupyter Notebook 웹 인터페이스에 연결해야 합니다. Jupyter Notebook은 기본적으로 더 넓은 웹에 노출되지 않는 원격 서버의 특정 포트(예: :8888, :8889 등)에서 브라우저 인터페이스를 실행합니다. . SSH 터널링을 사용하면 원격 서버 포트에 안전하게 연결할 수 있으므로 로컬 웹 브라우저를 사용하여 액세스할 수 있습니다.

이 지침은 서버에 연결한 창이 아닌 로컬 터미널 창에서 실행되도록 설계되었습니다.

SSH 터널링

Windows를 사용하는 경우 터미널에서 ssh를 사용하려면 OpenSSH 버전을 설치해야 합니다. PowerShell에서 작업하는 것을 선호하는 경우 ssh 명령을 포함하는 기본 Windows bash 터미널 환경을 제공하는 Windows용 Git을 따를 수 있습니다. 이들 각각은 잘 지원되며 사용하기로 결정한 것은 선호도에 따라 결정됩니다.

Mac 또는 Linux를 사용하는 경우 터미널에서 이미 ssh 명령을 사용할 수 있습니다.

SSH 터널을 생성하는 단계는 ssh 명령에 추가된 추가 매개변수가 있다는 점을 제외하면 SSH로 드롭릿에 연결하는 방법 가이드와 유사합니다. 이 하위 섹션에서는 성공적인 터널링을 위해 ssh 명령에 필요한 추가 매개변수에 대해 설명합니다.

새 로컬 터미널 창에서 다음 SSH 명령을 실행하여 SSH 터널링을 수행할 수 있습니다.

  1. ssh -L 8888:localhost:8888 your_server_username@your_server_ip

ssh 명령은 SSH 연결을 열지만 -L 은 로컬(클라이언트) 호스트의 지정된 포트가 원격의 지정된 호스트 및 포트로 전달되도록 지정합니다. 사이드(서버). 즉, 서버의 두 번째 포트 번호(예: 8888)에서 실행 중인 모든 것이 첫 번째 포트 번호(예: 8888)에 나타납니다. mark>) 로컬 컴퓨터에 있습니다.

포트 8888을(를) 사용할 수 없다는 메시지가 표시되면 65535 미만의 다른 임의 포트 번호로 변경할 수 있습니다. 포트 8888에는 큰 의미가 없습니다. 그러나 이와 같은 데모에 자주 사용됩니다.

server_username은 생성한 서버의 사용자 이름(예: sammy)이며 your_server_ip 는 서버의 IP 주소입니다.

예를 들어 사용자 이름이 sammy이고 서버 주소가 your_server_ip인 경우 명령은 다음과 같습니다.

  1. ssh -L 8888:localhost:8888 sammy@your_server_ip

ssh -L 명령을 실행한 후 오류가 표시되지 않으면 프로그래밍 환경으로 이동하여 Jupyter Notebook을 실행할 수 있습니다.

  1. jupyter notebook

URL과 함께 출력을 받게 됩니다. 로컬 컴퓨터의 웹 브라우저에서 http://localhost:8888로 시작하는 URL을 사용하여 Jupyter Notebook 웹 인터페이스를 엽니다. 토큰 번호가 포함되어 있는지 확인하거나 http://localhost:8888에서 프롬프트가 표시되면 토큰 번호 문자열을 입력하십시오.

3단계 - Jupyter 노트북 실행

Jupyter Notebook이 설치되어 있으면 터미널에서 실행할 수 있습니다. 이렇게 하려면 다음 명령을 실행합니다.

  1. jupyter notebook

Jupyter Notebook의 활동 로그가 터미널에 인쇄됩니다. Jupyter Notebook을 실행하면 특정 포트 번호에서 실행됩니다. 실행 중인 첫 번째 노트북은 일반적으로 포트 8888에서 실행됩니다. Jupyter Notebook이 실행 중인 특정 포트 번호를 확인하려면 시작하는 데 사용된 명령의 출력을 참조하십시오.

Output
[I NotebookApp] Serving notebooks from local directory: /home/sammy [I NotebookApp] 0 active kernels [I NotebookApp] The Jupyter Notebook is running at: http://localhost:8888/ [I NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation). ...

서버가 아닌 로컬 컴퓨터에서 Jupyter Notebook을 실행하는 경우 기본 브라우저에서 Jupyter Notebook 웹 앱을 열어야 합니다. 그렇지 않거나 창을 닫은 경우 출력에 제공된 URL로 이동하거나 localhost:8888로 이동하여 연결할 수 있습니다.

Jupyter Notebook 프로세스를 중지하고 싶을 때마다 Ctrl+C를 누르고 메시지가 표시되면 Y를 입력한 다음 Enter를 눌러 확인합니다.

다음과 같은 결과가 표시됩니다.

Output
[C 12:32:23.792 NotebookApp] Shutdown confirmed [I 12:32:23.794 NotebookApp] Shutting down kernels

이제 Jupyter Notebook이 더 이상 실행되지 않습니다.

4단계 - Jupyter 노트북 사용

이 섹션에서는 Jupyter Notebook 사용의 기본 사항에 대해 설명합니다. 현재 Jupyter Notebook이 실행 중이 아니면 jupyter notebook 명령으로 시작합니다.

이제 웹 브라우저를 사용하여 연결해야 합니다. Jupyter Notebook은 매우 강력하고 많은 기능을 가지고 있습니다. 이 섹션에서는 노트북 사용을 시작하는 데 필요한 몇 가지 기본 기능에 대해 설명합니다. Jupyter Notebook은 실행되는 디렉터리의 모든 파일과 폴더를 표시하므로 프로젝트 작업을 할 때 프로젝트 디렉터리에서 시작해야 합니다.

새 노트북 파일을 만들려면 오른쪽 상단 풀다운 메뉴에서 새로 만들기 > Python 3을 선택합니다.

그러면 노트북이 열립니다. 이제 셀에서 Python 코드를 실행하거나 셀을 마크다운으로 변경할 수 있습니다. 예를 들어 상단 탐색 모음에서 셀 > 셀 유형 > 마크다운을 클릭하여 마크다운을 허용하도록 첫 번째 셀을 변경합니다. 이제 Markdown을 사용하여 메모를 작성할 수 있으며 $$ 기호 사이에 배치하여 LaTeX로 작성된 방정식을 포함할 수도 있습니다. 예를 들어 markdown으로 변경한 후 셀에 다음을 입력합니다.

# Simple Equation

Let us now implement the following equation:
$$ y = x^2$$

where $x = 2$

마크다운을 서식 있는 텍스트로 바꾸려면 Ctrl+Enter를 누르면 다음과 같은 결과가 나타납니다.

마크다운 셀을 사용하여 메모를 작성하고 코드를 문서화할 수 있습니다. 간단한 방정식을 구현하고 결과를 출력해 봅시다. 상단 셀을 클릭한 다음 Alt+Enter를 눌러 그 아래에 셀을 추가합니다. 새 셀에 다음 코드를 입력합니다.

x = 2
y = x**2
print(y)

코드를 실행하려면 Ctrl+Enter를 누르십시오. 다음과 같은 결과를 받게 됩니다.

이제 다른 Python 개발 환경에서와 마찬가지로 모듈을 가져오고 노트북을 사용할 수 있습니다!

Jupyter 노트북 서버 측을 종료하려면 시작한 터미널 창으로 돌아가서 Ctrl+C를 누릅니다. 이것은 터미널 프로세스를 종료하기 위한 표준 바로 가기이며 Jupyter는 종료하기 전에 저장하라는 메시지를 표시합니다.

결론

축하해요! 이제 Jupyter Notebook을 사용하여 Markdown에서 재현 가능한 Python 코드 및 메모를 작성할 수 있습니다. 인터페이스 내에서 Jupyter Notebook을 빠르게 둘러보려면 상단 탐색 메뉴에서 도움말 > 사용자 인터페이스 둘러보기를 선택하여 자세히 알아보세요.

여기에서 시계열 시각화 및 예측에 대한 시리즈를 읽을 수 있습니다.