<div style="text-align: right; background-color: #f5f5f5; padding: 4px 12px; border-radius: 5px; display: inline-block; float: right; font-size: 1.4rem;"> Last Updated:2025/07/01 </div> # Application – Jupyter Lab [TOC] <br> <div style="border: 1px solid #B7B7B7; padding: 0.8rem 1rem; border-radius: 5px; color: #333; background: #F8F8F8"> <strong><h2>&nbsp; 前情說明</h2></strong> <p></p> 在 Open OnDemand(OOD)環境中使用 Jupyter Notebook 或 Jupyter Lab 時,需注意以下限制與操作建議: - **OOD 執行於計算節點,無法連接外部網路進行 Python 套件的即時安裝。** - 若您需要在 Jupyter 中使用額外的 Python 套件,**建議於登入節點(Login Node)先安裝 Miniconda 並建立自定義虛擬環境**,再將該環境註冊為 Jupyter Kernel,以供選擇使用。 - 若不需安裝額外套件,可略過虛擬環境設定步驟,直接跳到 [登入 Open OnDemand](https://man.twcc.ai/@f1-manual/App_Jupyter_Lab#%E7%99%BB%E5%85%A5-Open-OnDemand)。 <p></p> <font color="red">➤ 由於 OOD 的使用限制,每位使用者**同一時間僅能啟動一個 Interactive Session**,若需啟動新的資源,請先手動刪除既有的 Session,以釋出資源。</font> </div> <br> ## 建立自訂 Miniconda Environment <br> 並整合至 Jupyter Notebook / Jupyter Lab **1. 登入 Login Node** 請使用 SSH 工具登入 F1 的登入節點 `f1-ilgn01.nchc.org.tw` 或 `f1-ilgn02.nchc.org.tw`。 <div style="border: 1.5px solid #B7B7B7; padding: 1rem 1rem; border-radius: 5px; color: #333;"> 🔗 <strong>詳細教學請參閱</strong> <a href="https://man.twcc.ai/@f1-manual/login_node" target="_blank" style="color: #007ACC;"> 登入節點操作流程 </a> </div> <br> **2. 安裝 Miniconda3** ``` [user@ilgn01 ~]$ mkdir -p ~/miniconda3 $ wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda3/miniconda.sh $ bash ~/miniconda3/miniconda.sh -b -u -p ~/miniconda3 $ rm -rf ~/miniconda3/miniconda.sh $ ~/miniconda3/bin/conda init bash $ ~/miniconda3/bin/conda init zsh ``` <font color="red">➤ **執行完**</font> `conda init` <font color="red">**後請重新登入 Login Node 登入節點,確保環境變數正確更新。**</font> <br> **3. 建立虛擬環境並安裝 Jupyter 相關工具** - 使用下列指令建立名為 `ood_jupyter_python` 的虛擬環境並安裝 `jupyter` 與 `jupyterlab` ```bash conda create -n ood_jupyter_python jupyter jupyterlab ``` - 建立完成後,請執行下列指令確認虛擬環境是否建立於 `/home/<username>/miniconda3/envs/ood_jupyter_python` ```bash conda env list ``` - 若無請根據備註的操作,新增路徑到 `envs_dirs` 中,重新創造一個虛擬環境 ``` [user@ilgn01 ~]$ conda create -n ood_jupyter_python jupyter jupyterlab ... ... Proceed ([y]/n)? y Downloading and Extracting Packages: Preparing transaction: done Verifying transaction: done Executing transaction: done # # To activate this environment, use # # $ conda activate ood_jupyter_python # # To deactivate an active environment, use # # $ conda deactivate [user@ilgn01 ~]$ conda env list # conda environments: # ood_jupyter_python /home/user/miniconda3/envs/ood_jupyter_python ``` **4. 將虛擬環境註冊至 Jupyter Kernel** - 執行`conda activate ood_jupyter_python` 切換到 ood_jupyter_python 虛擬環境 ``` [user@ilgn01 ~]$ conda activate ood_jupyter_python ``` - 執行 `ipython kernel install --user --name= “jupyter\_test\_python` 加ood_jupyter_python 虛擬環境到 jupyter ``` (ood_jupyter_python) [user@ilgn01 ~]$ ipython kernel install --user --name=ood_jupyter_python 0.00s - Debugger warning: It seems that frozen modules are being used, which may 0.00s - make the debugger miss breakpoints. Please pass -Xfrozen_modules=off 0.00s - to python to disable frozen modules. 0.00s - Note: Debugging will proceed. Set PYDEVD_DISABLE_FILE_VALIDATION=1 to disable this validation. Installed kernelspec ood_jupyter_python in /home/u5846412/.local/share/jupyter/kernels/ood_jupyter_python ``` - 執行 `jupyter kernelspec list` 確認是否有註冊成功 jupyter\_test\_python ``` (ood_jupyter_python) [user@ilgn01 ~]$ jupyter kernelspec list ... Available kernels: ood_jupyter_python /home/u5846412/.local/share/jupyter/kernels/ood_jupyter_python ``` **5. 安裝其他 Python 套件(可選)** 完成上述步驟後,所建立的虛擬環境已成功整合至 Open OnDemand 的 Jupyter Kernel 中。後續如需安裝額外套件,僅需於該虛擬環境中安裝,即可在 Jupyter 中同步使用。 <br> <!---是不是要放minicaonda 完整的範例---> :::warning <i class="fa fa-bullhorn" aria-hidden="true"></i> **備註**: #### 若虛擬環境未建立於 `/home/<username>/miniconda3/envs/` ,請根據以下步驟把指定的目錄新增至 `envs_dirs` 配置中,並手動指定虛擬環境位置: ``` [user@ilgn01 ~]$ conda config --append envs_dirs /home/u5846412/miniconda3/envs [user@ilgn01 ~]$ conda create --prefix /home/u5846412/miniconda3/envs/ood_jupyter_python_envs jupyter jupyterlab ... Proceed ([y]/n)? y ... [user@ilgn01 ~]$ conda env list # conda environments: # ood_jupyter_python_envs /home/u5846412/miniconda3/envs/ood_jupyter_python_envs [user@ilgn01 ~]$ conda activate ood_jupyter_python_envs (ood_jupyter_python_envs) [user@ilgn01 ~]$ ipython kernel install --user --name=ood_jupyter_python_envs ... Installed kernelspec ood_jupyter_python_envs in /home/u5846412/.local/share/jupyter/kernels/ood_jupyter_python_envs (ood_jupyter_python_envs) [user@ilgn01 ~]$ jupyter kernelspec list ... Available kernels: ood_jupyter_python_envs /home/u5846412/.local/share/jupyter/kernels/ood_jupyter_python_envs (ood_jupyter_python_envs) [user@ilgn01 ~]$ ``` ✅ 正確路徑:![](https://man.twcc.ai/_uploads/HkaR6I9LR.png) ❌ 錯誤路徑:![](https://man.twcc.ai/_uploads/HJahnU5UR.png) ::: <br> --- <br> ## 登入 Open OnDemand 1. 請在您慣用的瀏覽器中,輸入以下任一網址以開啟 Open OnDemand 登入頁面: - https://f1-stn01.nchc.org.tw/ - https://f1-stn02.nchc.org.tw/ 2. 將看到以下登入介面,請輸入您於 **創進一號(F1)** 的 **主機帳號** 與 **密碼** 完成登入。 <font color="blue">➤ **若您忘記主機帳號,可前往 [iService 主機帳號查詢教學](https://man.twcc.ai/@f1-manual/iService)**</font> ![](https://man.twcc.ai/_uploads/rkeCpAgTAke.jpg) :::danger <i class="fa fa-exclamation-triangle" aria-hidden="true"></i> **注意:** 為確保安全性,**登入網頁會有時效限制**,若您登入過程中閒置時間過長或已完成登入後又重新登入,系統可能會出現錯誤提示`Bad Request`,此時請重新輸入網址(https://f1-stn01.nchc.org.tw/ 或 https://f1-stn02.nchc.org.tw/ )後登入。 ::: <br> ### 開啟 Jupyter Notebook / JupyterLab 應用程式 1. 從首頁點選 **Jupyter Notebook / JupyterLab App** 圖示開啟 ![](https://man.twcc.ai/_uploads/HJegLXi3Lll.png) 2. 或可透過選單 **Interactive Apps → Jupyter/JupyterLab** 開啟 ![](https://man.twcc.ai/_uploads/Sy9XSs28ex.png) 3. 開啟後**填寫資源配置表單**,可依需求選擇下列兩種方式開啟: - 方法一:直接啟用Jupyter Notebook / JupyterLab App ![](https://man.twcc.ai/_uploads/S1qzusUI0.png) - 方法二:使用自定義的 Miniconda Environment 啟用 <font color="blue">➤ 若您已依照教學 [建立自定的虛擬環境](https://man.twcc.ai/@f1-manual/App_Jupyter_Lab#%E5%BB%BA%E7%AB%8B%E8%87%AA%E8%A8%82-Miniconda-Environment-%E4%B8%A6%E6%95%B4%E5%90%88%E8%87%B3-Jupyter-Notebook--Jupyter-Lab),請勾選下方選項並輸入環境名稱,即可指定使用該虛擬環境:</font> ![](https://man.twcc.ai/_uploads/Syli8usnUgx.png) <font color="blue">➤ 若輸入的虛擬環境尚未建立,將無法成功 Launch,請點選 Delete 移除後重新索取資源</font> ![](https://man.twcc.ai/_uploads/rJ9oeU9L0.png) :::info <i class="fa fa-exclamation-circle" aria-hidden="true"></i> **資源設定建議表:** | 欄位名稱 | 說明 | |-|-| | **Project ID** | 系統將自動載入您所加入的計畫列表,請選擇錢包餘額足夠的計畫。 | | **Jupyter interface** | 選擇要啟用的介面 Jupyter Notebook 或 JupyterLab。| | **CPU cores** | 設定所需 CPU 核心數或 thread| | **Memory (GB)** | 設定 Job 可用記憶體(以 GB 為單位)。<br><font color="#f00">建議每核心搭配至少 4GB 記憶體(例如 2 cores 建議配 8GB)</font> | | **Number of Hours** | 設定 Job 執行時數,時間到將自動終止。 <font color="#f00"> (上限為兩小時) </font> | | **Check box if using custom miniconda Environment** | 若欲使用自定虛擬環境,請勾選此項,並於下方填寫環境名稱。 | | **Environment** | 請輸入已建立之 Miniconda 環境名稱。<br><font color="#f00"> 請確認該環境已安裝 `notebook` 或 `jupyterlab`,否則將無法啟動設定自定的Environment名稱。</font> | ::: :::warning <i class="fa fa-bullhorn" aria-hidden="true"></i> **備註**: 建議設定較高配置的 CPU cores 及 Memory(例如:2 cores 與 8 GB 記憶體),有助於快速啟動 Jupyter 環境。 ::: <br> --- <br> ### 啟動 Jupyter Notebook / JupyterLab(未勾選自定義環境) **1. 執行 Jupyter 任務** - 在資源配置表單填寫完成後,點選 **「Launch」** 按鈕以執行 Jupyter 任務。 - 若 Job 成功啟動,系統將出現以下對話視窗 - **Host** 欄位顯示您所分配的節點主機名稱 - 點選 **Session ID** 可開啟該任務的設定檔與 log 檔所在目錄 ![](https://man.twcc.ai/_uploads/rk3fvoMwR.png) **2. 開啟 Jupyter 操作介面** 點擊 **「Connect to Jupyter」** 按鈕,即可啟動 Jupyter Notebook 或 JupyterLab: - 在Jupyter Notebook 畫面中,可以選擇「New」來建立新的 Notebook。 ![](https://man.twcc.ai/_uploads/BkY6ajcLR.png) - Jupyter Lab 畫面則顯示整合式的工作區介面,適合進行多檔案、多視窗的開發操作。 ![](https://man.twcc.ai/_uploads/ryeivwszD0.png) <br> --- <br> ### 啟動 Jupyter Notebook / JupyterLab(使用自定義 Miniconda 環境) **1. 啟動 Jupyter 任務** - 完成表單填寫後,請勾選 **「Check box if using custom Miniconda Environment」** - 並於 **Environment** 欄位填入自定義環境名稱(例如:`ood_jupyter_python_envs`),再點選 **「Launch」** 啟動任務。 <font color="red">➤ **如果環境啟動失敗,請查看備註的內容說明,並重新設定。**</font> ![](https://man.twcc.ai/_uploads/BkjpztqUC.png) <br> **2. 進入 Jupyter 操作介面** - 任務成功啟動後,點選 **「Connect to Jupyter」** 進入操作頁面。 - **Host** 欄位顯示您被分配的主機名稱, - 點擊 **Session ID** 可檢視該任務之設定檔與 log 資訊 ![](https://man.twcc.ai/_uploads/Hy_CztqUR.png) <br> **3. 在 ==Jupyter Notebook== 中啟用虛擬環境** - 進入後可由上方選單點選 `File → New Notebook` 以建立新的筆記本 ![](https://man.twcc.ai/_uploads/r1xvnaOQwC.png) - 系統會彈出 **Select Kernel** 對話框,請選擇您建立的虛擬環境(例如:`jupyter_test_python`)。 ![](https://man.twcc.ai/_uploads/BJgxYsjc8A.png) - 若需更改既有的 Notebook kernel,可由上方選單選擇 `Kernel → Change Kernel` 進行更換。 <font color="red">➤ **若需安裝額外套件,請返回登入節點操作。安裝完畢後,請記得於 Notebook 中重新啟動 (`Kernel → Restart Kernel`) 以載入新環境**</font> ![](https://man.twcc.ai/_uploads/SJ2aRd7v0.png) **4. 在 ==JupyterLab== 中啟用虛擬環境** - 進入後,於 **Launcher** 視窗中點選您的自定義 kernel(例如:`ood_jupyter_python_envs`)來建立新 Notebook。 ![](https://man.twcc.ai/_uploads/HkgmZGYqLA.png) - 若需更改既有的 Notebook kernel,可由上方選單選擇 `Kernel → Change Kernel` 進行更換。 ![](https://man.twcc.ai/_uploads/SJ2aRd7v0.png) <br> --- <br> ## 刪除 Interactive Session 為釋放計算資源並避免重複啟動錯誤,使用完 Jupyter Notebook 或 JupyterLab 後,請務必主動關閉對應的 Interactive Session。可依照以下任一方式操作: **方式一:從 Jupyter Notebook 中關閉** - 點選上方選單 `File → Shut Down`。 - 系統將關閉目前的 Notebook 視窗並自動終止執行中的計算節點任務。 ![](https://man.twcc.ai/_uploads/Sk9ByFmD0.png) **方式二:從 JupyterLab 中關閉** - 點選上方選單 `File → Shut Down`。 - 操作將同樣關閉整個 Lab 環境並釋放資源。 ![](https://man.twcc.ai/_uploads/H1aHyYXP0.png) **方式三:透過 Open OnDemand 頁面手動關閉** - 前往 OOD 首頁,點選 `My Interactive Sessions`。 - 找到執行中的 Session,按下 **「Delete」** 按鈕即可終止並刪除。 ![](https://man.twcc.ai/_uploads/HyziJ628ll.png) - 系統將跳出確認視窗,請點選 **「Confirm」** 確認刪除。 ![](https://man.twcc.ai/_uploads/BkOkgph8ll.png)