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
에 설치하므로 해당 환경의 디렉토리에 있는지 확인하고 다음과 같이 활성화합니다.
- cd ~/environments
- . my_env/bin/activate
다음으로 pip
가 최신 버전으로 업그레이드되었는지 확인할 수 있습니다.
- pip install --upgrade pip
이제 다음 명령으로 Jupyter Notebook을 설치할 수 있습니다.
- 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 터널링을 수행할 수 있습니다.
- 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
인 경우 명령은 다음과 같습니다.
- ssh -L 8888:localhost:8888 sammy@your_server_ip
ssh -L
명령을 실행한 후 오류가 표시되지 않으면 프로그래밍 환경으로 이동하여 Jupyter Notebook을 실행할 수 있습니다.
- jupyter notebook
URL과 함께 출력을 받게 됩니다. 로컬 컴퓨터의 웹 브라우저에서 http://localhost:8888
로 시작하는 URL을 사용하여 Jupyter Notebook 웹 인터페이스를 엽니다. 토큰 번호가 포함되어 있는지 확인하거나 http://localhost:8888
에서 프롬프트가 표시되면 토큰 번호 문자열을 입력하십시오.
3단계 - Jupyter 노트북 실행
Jupyter Notebook이 설치되어 있으면 터미널에서 실행할 수 있습니다. 이렇게 하려면 다음 명령을 실행합니다.
- 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을 빠르게 둘러보려면 상단 탐색 메뉴에서 도움말 > 사용자 인터페이스 둘러보기를 선택하여 자세히 알아보세요.
여기에서 시계열 시각화 및 예측에 대한 시리즈를 읽을 수 있습니다.