本篇文章為實驗室工作站的jupyterhub安裝配置筆記,由於軟硬件等各種區別,安裝過程難免有所區別,僅供大家參考。
實驗室新到一台深度學習工作站,原本想裝一個juoyter notebook直接開干,但是突然想到jupyter不支持多用戶同時使用,因此決定裝一個jupyterhub方便大家使用(雖然目前只有我用)
參考文章:https://www.jianshu.com/p/0285feaa2ba2(文章所使用的命令有稍許拼寫錯誤,以及路徑改變,推薦按照本人筆記進行安裝,若安裝過程遇到其他問題,歡迎在本頁面留言討論)
機器環境:lsb_release -a
Distributor ID: Ubuntu
Description: Ubuntu 18.04 LTS
Release: 18.04
Codename: bionic
ubuntu源配置
首先將ubuntu源切換到速度較快的源,例如清華源
更新
$ sudo apt-get update #從軟件源獲取最新軟件列表
$ sudo apt-get upgrade #根據軟件列表更新本機軟件
然后安裝一下鏈接中提到的這些軟件
$ sudo apt-get -y install git gcc g++ make openssl libssl-dev libbz2-dev libreadline-dev libsqlite3-dev python-dev libmysqlclient-dev
python環境的配置,首先進入root賬戶,以便之后配置的jupyter能夠所有用戶訪問
$ sudo su
安裝pyenv
$ cd /opt
$ git clone https://github.com/yyuu/pyenv.git pyenv
用vim打開~/.bashrc
后(vim ~/.bashrc
),添加如下的配置
export PYENV_ROOT="/opt/pyenv"
if [ -d "${PYENV_ROOT}" ]; then
export PATH=${PYENV_ROOT}/bin:$PATH
eval "$(pyenv init -)"
fi
然后讀取新添加的配置
source ~/.bashrc
通過pyenv來安裝anaconda
$ pyenv install anaconda3-5.3.0
然而由於網絡環境原因,這一步始終無法下載,嘗試使用替代方法,先手動從清華anaconda源下載anaconda-5.3.0的安裝包,然后放入pyenv的根目錄(上面配置過)/opt/pyenv
,這樣pyenv install就會自動識別到已經下載的安裝包開始安裝
$ cd /opt/pyenv
$ wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-5.3.0-Linux-x86_64.sh
$ pyenv install anaconda3-5.3.0
$ pyenv global anaconda3-5.3.0
利用conda安裝jupyterhub和它使用的notebook
首先將conda切換為清華源(清華開源社區什么時候來把廣告費結一下)
$ vim ~/.condarc
將內容修改為
channels:
- defaults
show_channel_urls: true
default_channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
custom_channels:
conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
開始安裝(強迫症表示必須加-v)
$ conda install -v -c conda-forge jupyterhub
$ conda install -v notebook
生成jupyter的配置文件
$ mkdir /etc/jupyterhub
$ cd /etc/jupyterhub
$ jupyterhub --generate-config
jupyter的啟動配置
$ echo jupyterhub -f /etc/jupyterhub/jupyterhub_config.py > jupyterhub.sh
$ echo su -l root /etc/jupyterhub/jupyterhub.sh \& >> /etc/rc.local
配置jupyterhub用戶
$ vim /etc/jupyterhub/jupyterhub_config.py #這一步大家注意,后續如果遇到http 500問題的話刪除該jupyter_config.py文件或許會解決,目前我也不清楚是什么原因
- 普通用戶
c.Authenticator.whitelist = {'testuser'}
- 管理員用戶
c.JupyterHub.admin_users = { 'ubuntu' }
啟動jupyterhub
接下來直接啟動jupyterhub就可以使用了
$ jupyterhub
或者使用nphup在后台啟動
$ nohup jupyterhub > jupyterhub.log &
至此安裝完畢,在瀏覽器訪問服務器ip+端口地址即可使用