jupyter notebook 是乙個非常有用的工具,我們可以在瀏覽器中任意編輯除錯我們的python**,並且支援markdown 語法,可以說是科研利器。但是這種情況適合個人使用,也就是jupyter notebook以我們自己的主機作為伺服器,然後我們用自己的瀏覽器編輯自己本機的python**。最近實驗室搭建了深度學習的伺服器,每個人都有乙個使用者可以使用gpu資源,但是每次寫**要在本地除錯好了然後再ssh提交到伺服器執行,如果有問題,還要再在本地更改然後再次提交,非常的麻煩。為了解決這個煩惱,我們在gpu伺服器上搭建了jupyterhub, 它和notebook不同之處在於它是乙個hub,哈哈,也就是notebook的伺服器,把它裝在伺服器上,然後大家可以通過區域網在瀏覽器上進行python**的編輯和除錯。
這篇教程在使用jupyterhub的時候是在anaconda的虛擬環境中安裝的,如果你的是本機的python環境,不用擔心,其原理都是一樣的。
這裡是第乙個坑,在官方教程中,它告訴我們需要提前裝依賴項nodejs,
sudo apt-get install npm nodejs-legacy
但是當我通過這種方式安裝後,再安裝jupyterhub 後發生了錯誤,找了很久的原因沒有找到,後來看錯誤提示,猜測可能是nodejs的版本問題,也就是說我們通過apt-get 安裝的nodejs 版本不符合我們的需要,我們的系統是ubuntu 16.04, 使用的apt 源是阿里雲的源。可能其他源或者ubuntu18.04不會出現這種問題吧。如果在安裝jupyterhub的時候它提示你nodejs的錯誤,很有可能是版本呢問題。
/usr/local/nodejs
根據官方教程,有兩種方式安裝:
pip 安裝python3 -m pip install notebook # needed if running the notebook servers locally
conda 安裝選擇其中一種安裝即可,我們使用第一種conda install -c conda-forge jupyterhub # installs jupyterhub and proxy
conda install notebook # needed if running the notebook servers locally
pip
安裝,因為conda安裝總會出現連線超時的問題。如果上述過程都沒有問題,我們就可以在命令列中敲入
jupyterhub -h
看看是否有幫助提示,有幫助提示代表安裝成功,在虛擬環境中安裝的需要先進入到虛擬環境中source activate **
。接下來需要我們配置jupyterhub了,這個配置過程比較簡單,按步驟走就行了
生成配置檔案這個命令會在你的當前目錄下生成乙個jupyterhub --generate-config
jupyterhub_config.py
檔案,接下來我們需要在這個檔案中配置我們的網路和使用者管理。啟動jupyterhub上述命令可以根據你的配置檔案啟動jupyterhub。jupyterhub -f /path/to/jupyterhub_config.py
c.jupyterhub.ip = '192.168.24.***'
c.jupyterhub.port = 445
c.pamauthenticator.encoding = 'utf-8'
c.localauthenticator.create_system_users = false
c.authenticator.whitelist =
c.authenticator.admin_users =
c.jupyterhub.statsd_prefix = 'jupyterhub'
最後登入使用在同乙個區域網的電腦中,開啟瀏覽器輸入剛才配置的ip和埠,然後輸入登入linux的使用者名稱和密碼即可登入使用。docker 安裝jupyterhub支援R語言
docker安裝 systemctl stop firewalld.service systemctl disable firewalld.service yum config manager add repo yum makecache fast yum y install docker ce s...
Jupyterhub 認證方式
jupyterhub支援多種認證方式 pam和ldap,預設使用的是pam,即與系統使用者層使用同一認證管理,使用者名稱與密碼與系統配置的相同。首先用py3安裝乙個外掛程式 pip3 install jupyterhub dummyauthenticator i然後,如果遇到生成token問題,在配...
JupyterHub支援多使用者和ldap認證(2)
1 安裝jupyterhub ldapauthenticator pip install jupyterhub ldapauthenticator c.jupyterhub.authenticator class ldapauthenticator.ldapauthenticator c.ldapa...