一、寫在前面
未經允許,不得轉載,謝謝~~
很久沒有更新博客了ヾ(?°?°?)??
這篇主要是關于科研中對于用本地電腦遠程使用服務器上面的Jupyter Notebook的配置記錄。
我們都知道Jupyter Notebook是一個很好用的交互式的代碼編輯器,可以支持python、markdown等多種語言,特別是對于處理實驗結果非常有幫助,但是服務器由于沒有圖形界面,而為了避免本地機器也要配置相關環境以及文件同步的煩惱,我們就可以配置遠程使用服務器上的Jupyter Notebook,就是素有實際的程序運行都在服務器端,但界面顯示在本地。
二、具體配置過程
1. 安裝Jypyter Notebook
- 在服務器上安裝,本文用conda的方式來管理;
- 執行指令:
conda install jupyter
- 安裝完成后查看版本:
jupyter --version
- 能成功看到版本號就安裝成功啦~~
2. 生成配置文件
- 執行指令:
jupyter notebook --generate-config
-
如下所示:
- 可以看到配置文件的名字為:
jupyter_notebook_config.py
,后面需要再配置這個文件;
3. 生成秘鑰
- 打開python3
- 輸入:
from IPython.lib import passwd
passwd()
-
然后設置密碼之后會得到一組生成的秘鑰
- 把生成的秘鑰復制下來,
'sha1:8ab8caa21bff:bc891ca676530bedc0dc7f7c545ae610b01e45fd'
4. 修改默認配置文件
- 這個時候就需要修改之前第2步中的配置文件了;
- 在終端輸入:
vim ~/.jupyter/jupyter_notebook_config.py
, 對文件進行編輯; - 在文件末尾添加以下語句:
c.NotebookApp.ip='*'
c.NotebookApp.password = u'sha:ce...剛才復制的那個密文'
c.NotebookApp.open_browser = False
c.NotebookApp.port =8889
c.IPKernelApp.pylab = 'inline'
- 其中,
c.NotebookApp.port =8889
中的端口號可以隨意指定;
5. 服務器端啟動jupyter
- 終端輸入指令:
jupyter notebook
-
如下所示:
- 可以看到給出的提示:
The Jupyter Notebook is running at: http://[all ip addresses on your system]:8889/
- 即在本地機器使用
http://[all ip addresses on your system]:8889/
即可訪問服務器上的jupyter程序
三、使用效果
-
如下所示:
- 這樣每次都可以再本地打開了。
- 使用之前會放你輸入之前設置過的密碼;
- 另外運行之前需要在服務器上啟動jupyter程序;
-----------------------20181229更新---------------------
四、 jupyter 選擇conda虛擬環境
- 需求所在
我們可能需要配置多個虛擬環境來運行自己的程序,那怎么樣在虛擬環境在運行jupyter notebook呢~ - 操作步驟
- 激活對應的虛擬環境:
source activate 環境名稱
- 安裝
conda install ipykernel
; - 將環境寫入notebook的kernel中:
python -m ipykernel install --user --name 環境名稱 --display-name "Python (環境名稱)"
- 然后打開notebook:
jupyter notebook
- 然后把對應文件的kernel---> change kernel修改一下,改成剛剛配置好的。(這一步折騰了好久才發現(⊙o⊙)…)
- 這樣就可以啦
- 激活對應的虛擬環境:
五、參考文獻
非常感謝以下博主的文章: