python3 源码编译并配置jupyterhub

2018-02-26 11:18:37 浏览数 (1)

注意事项:需要注意的是, 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

代码语言:javascript复制
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/ 可以用来管理多用户使用,同时还有包含认证。

详细操作过程

0 人点赞