如何在 Ubuntu 22.04 上設置 Python 3 的 Jupyter Notebook

介紹

Jupyter Notebook是一個作為 Web 應用程式的互動式計算命令殼層。該工具可與多種語言一起使用,包括 Python、Julia、R、Haskell 和 Ruby。它通常用於處理數據、統計建模和機器學習。

本教程將引導您設置 Jupyter Notebook,以便在本地或從 Ubuntu 22.04 伺服器上運行,並教您如何連接並使用該筆記本。Jupyter 筆記本(或簡稱筆記本)是由 Jupyter Notebook 應用程序生成的文檔,其中包含計算機代碼和豐富的文本元素(段落、方程式、圖片、鏈接等),有助於呈現和分享可重現的研究。

通過本指南結束時,您將能夠在本地計算機或遠程伺服器上運行使用 Jupyter Notebook 的 Python 3 代碼。

先決條件

要遵循本教程,您將需要一個 Python 3 編程環境和 Python venv 模塊,無論是在

這個教程中的所有指令都應該以非根使用者身份運行。如果指令需要根許可權,則會在之前加上 sudo使用 Ubuntu 22.04 進行初始伺服器設定 解釋了如何添加使用者並給予他們 sudo 許可權。

步驟 1 — 安裝 Jupyter Notebook

在這一部分中,我們將使用 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 隧道連接伺服器安裝的 Web 介面的人。

步驟2(可選)— 使用 SSH 隧道連接到伺服器安裝

如果您在遠端伺服器上安裝了 Jupyter Notebook,您將需要使用 SSH 隧道連接到 Jupyter Notebook Web 介面。Jupyter Notebook 在遠端伺服器上運行其瀏覽器介面在特定埠上(例如 :8888:8889 等),這些埠預設情況下不會向更廣泛的網路公開。SSH 隧道連接允許您安全地連接到遠端伺服器埠,然後可以使用本地 Web 瀏覽器訪問它們。

請注意,這些指示旨在從本地終端窗口運行,即不是您已經連接到伺服器的窗口。

SSH 隧道連接

如果您使用的是Windows,您需要安装OpenSSH的一个版本才能从终端ssh。如果您更喜欢使用PowerShell,您可以按照微软的文档添加OpenSSH到PowerShell。如果您更喜欢使用完整的Linux环境,您可以设置WSL,即Windows子系统,它默认包含ssh。最后,作为轻量级的第三个选择,您可以安装Git for Windows,它提供了一个包含ssh命令的本地Windows bash终端环境。这些选项都得到了很好的支持,您决定使用哪个将取决于个人偏好。

如果您使用的是Mac或Linux,则已经在您的终端中可用ssh命令。

创建SSH隧道的步骤与如何使用SSH连接到Droplets指南类似,只是在ssh命令中添加了额外的参数。本小节将概述在ssh命令中成功进行隧道所需的附加参数。

通过在新的本地终端窗口中运行以下SSH命令可以进行SSH隧道连接:

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

ssh 命令打開了一個 SSH 連接,但 -L 指定了要將本地 (客戶端) 主機上的給定端口轉發到遠程端 (服務器) 上的給定主機和端口。這意味著在服務器上運行的第二個端口號 (例如 8888) 將出現在您本地計算機的第一個端口號 (例如 8888) 上。

如果您收到端口 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 的輸出。從本地機器上的 Web 瀏覽器中,使用以 http://localhost:8888 開頭的 URL 打開 Jupyter Notebook Web 介面。確保包含令牌號碼,或在 http://localhost:8888 提示時輸入令牌號碼字符串。

步驟 3 — 執行 Jupyter Notebook

安裝了 Jupyter Notebook 後,您可以在終端中執行它。要這樣做,請執行以下命令:

  1. jupyter notebook

A log of the activities of the Jupyter Notebook will be printed to the terminal. When you run Jupyter Notebook, it runs on a specific port number. The first notebook you are running will usually run on port 8888. To check the specific port number Jupyter Notebook is running on, refer to the output of the command used to start it:

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 Web 應用程式。如果沒有,或者如果您關閉了窗口,您可以導航到輸出中提供的 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 Notebook

本部分介紹使用 Jupyter Notebook 的基本知識。如果您目前沒有運行 Jupyter Notebook,請使用 jupyter notebook 命令啟動它。

你現在應該已經用網頁瀏覽器連接上了。Jupyter Notebook非常強大,並且具有許多功能。本節將概述一些基本功能,讓你開始使用筆記本。Jupyter Notebook會顯示從其運行的目錄中的所有文件和文件夾,所以當你在項目上工作時,請確保從項目目錄開始運行。

要創建一個新的筆記本文件,請從右上角下拉菜單中選擇新建Python 3

這將打開一個筆記本。現在我們可以在儲存格中運行Python代碼,或將儲存格更改為markdown。例如,點擊頂部導航欄中的儲存格儲存格類型Markdown,將第一個儲存格更改為接受Markdown。現在我們可以使用Markdown編寫筆記,甚至可以在LaTeX符號之間放置方程式。例如,將以下內容輸入到更改為markdown的儲存格中:

# 簡單方程式

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

where $x = 2$

要將markdown轉換為豐富文本,按下Ctrl+Enter,應該看到以下結果:

你可以使用markdown儲存格來做筆記和記錄你的代碼。讓我們實現這個簡單的方程式並打印結果。點擊頂部儲存格,然後按Alt+Enter在其下方添加一個儲存格。在新的儲存格中輸入以下代碼。

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

運行代碼,按Ctrl+Enter。你將收到以下結果:

你現在可以匯入模組,並像在任何其他Python開發環境中一樣使用筆記本!

要在伺服器端關閉Jupyter筆記本,請返回您啟動它的終端窗口,然後按下Ctrl+C。這是結束終端進程的標準快捷鍵,Jupyter會提示您在退出之前保存。

結論

恭喜!您現在應該能夠使用Jupyter Notebook以Markdown編寫可重現的Python代碼和註釋。要從界面內快速了解Jupyter Notebook,請從頂部導航菜單選擇幫助 > 用戶界面導覽以獲取更多資訊。

從這裡,您可能有興趣閱讀我們的時間序列可視化和預測系列文章。

Source:
https://www.digitalocean.com/community/tutorials/how-to-set-up-jupyter-notebook-for-python-3