python3 原始碼編譯並配置jupyterhub
注意事項:需要注意的是, sqlite安裝完成之後需要進行重新編譯python, 需要注意的是,sqlite安裝完成之後需要進行重新編譯python
1.下載並原始碼編譯python3
- #wget https://www.python.org/ftp/python/3.4.5/Python-3.4.5.tar.xz
- # xz -d Python-3.4.5.tar.xz
- # tar xf Python-3.4.5.tar -C /usr/local/src/
- # cd /usr/local/src/Python-3.4.5/
- # ./configure –prefix=/usr/local/python34
- # make -j8 && make install
注意事項:
#由於pip和ipython需要ssl支援:
yum install openssl openssl-devel -y
此時就可以在/usr/local/python3.4/bin/下面看到編譯生成的各個可執行檔案了,不過比較好的是,python3以後就預設支援了easy_install,pip等工具了!
2.安裝ipython以及notebook等相關外掛
- #export PATH=$PATH:/usr/local/python34/bin/
- #pip3.4 install ipython
- #pip3.4 install ipywidgets
- #pip3.4 install jupyter jupyterhub
安裝完之後如果沒有問題的話應該就可以啟動 ipython notebook了,
-
#ipython3 notebook –notebook-dir=/Users/xuxuebiao/python/notebook –port=8080 預設會開啟本機自帶的瀏覽器,並繫結到本地迴環介面(127.0.0.1),其實這樣是不能夠讓網際網路上的使用者訪問的。因此需要加其他引數,比如:–ip 10.0.0.24
注意:(ipython notebook = jupyter-notebook)
3.開啟jupyter介面,並進行web化的python操作
預設會開啟這個介面,顯示當前的檔案
![Alt text](./1469463063110.png)
點選new可以選擇連結終端並且能夠開啟支援notebook的語言
本文支援python3語言,其實還可以支援ruby,shell等
![Alt text](./1469463089939.png)
呼叫的terminal
![Alt text](./1469463306979.png)
注意事項:
- 有時候安裝的python模組包和python載入的模組包路徑並不一致,這個時候可以選擇把第三方模組專門放在一個位置,並手動載入他們!
import sys;print(sys.path) 先檢視python預設載入模組包的路徑
也可以使用import ftplib;print(ftplib)檢視
sys.path.append(‘path’) 然後將第三方模組的路徑追加到python預設檢測路徑中同時將此操作寫在配置檔案中:export PYTHONPATH=$PYTHONPATH:/usr/local/python/lib/
- 在python3中,預設使用pip install是安裝不了sqlite3的,因此就需要進行額外下載並進行安裝了
import site; site.getsitepackages() 檢視當前站點的包路徑,進去lib-dynload檢視是否有_sqlite.so模組
sqlite3的編譯安裝:
進入https://sqlite.org/download.html 下載sqlite-autoconf-3080401.tar.gz (https://sqlite.org/2016/sqlite-autoconf-3140000.tar.gz)
解壓後進行編譯:
./configure --prefix=/home/user/usr/db/sqlite && make && make install
需要注意的是,sqlite安裝完成之後需要進行重新編譯python
如果編譯玩python3還是無法載入sqlite:
如果重新編譯不能發現sqlite3模組的話,需要在Python-3.4.5/setup.py 進行編輯以下檔案 455行.然後進行重新編譯python3.4
add_dir_to_list(self.compiler.include_dirs, '/usr/local/db/sqlite/lib')
add_dir_to_list(self.compiler.include_dirs, '/usr/local/db/sqlite/include')
問題集錦:
啟動報錯:OSError: [Errno 99] Cannot assig
原因:預設繫結的是本地地址127.0.0.1 使用--ip 10.0.0.24 後即可解決
https://hub.docker.com/r/jupyter/jupyterhub/ 可以用來管理多使用者使用,同時還有包含認證。