1. 程式人生 > >linux下多版本python環境配置

linux下多版本python環境配置

1. 依賴

pyenv安裝使用git

# yum install git -y
# yum -y install gcc make patch gdbm-devel openssl-devel sqlite-devel readline-devel zlib-devel bzip2-devel

2. 建立使用者python

# useradd python
# passwd python

3. 使用python使用者登入

su - python

4. 開始部署pyenv

pyenv安裝方式:
- pyenv git方式安裝 https://github.com/pyenv/pyenv
- pyenv-installer 指令碼自動安裝 https://github.com/pyenv/pyenv-installer 以下將介紹使用 pyenv-installer 方式安裝 pyenv $ curl -L https://raw.githubusercontent.com/pyenv/pyenv-installer/master/bin/pyenv-installer | bashpython使用者的~/.bash_profile中追加 export PATH="/home/python/.pyenv/bin:$PATH" eval "$(pyenv init -)" eval "$(pyenv virtualenv-init -)"
$ source ~/.bash_profile 開始使用 pyenv $ python -V $ pyenv versions

5. pyenv 使用介紹

$ pyenv            # 顯示 pyenv 幫助
$ pyenv global  x.x.x    # 設定全域性 python版本(應用到整個系統)
$ pyenv local  x.x.x     # 設定本地 python版本(子目錄下會繼承此設定)
$ pyenv shell  x.x.x    # 設定會話 python版本(作用於當前shell會話)
$ pyenv help install    # 檢視子命令幫助

列出 pyenv 支援的所有版本
$ pyenv install –list

5.1 安裝特定的 python 版本

5.1.1 online 安裝指定 python 版本

$ pyenv install 3.5.3
$ pyenv versions

5.1.2. 使用快取方式安裝指定 python 版本
$ pyenv install 3.5.3 -v

cache目錄,如果目錄不存在,就自己建立,在~/.pyenv目錄下,新建cache目錄,放入下載好的 python 檔案。
不確定要哪一個檔案,把下載的3個檔案都放進去。

6. pyenv 使用 virtualenv 虛擬環境設定

pyenv已經自帶 Virtualenv外掛,在plugins/pyenv-virtualenv

6.1 建立一個指定版本的虛擬環境空間

$ pyenv virtualenv 3.6.1 magedu361  # 創建出一個3.6.1版本的虛擬環境
$ pyenv versions        # 真實目錄在.pyenv/versions/
* system (set by /home/python/.pyenv/version)
  3.5.3
  3.6.1
  3.6.1/envs/magedu361
  magedu361

6.2 使用虛擬環境空間

$ mkdir -p magedu361/projects/cmdb
[python@node ~]$ cd magedu361/projects/cmdb
[python@node cmdb]$ pyenv local magedu361
(magedu361) [python@node cmdb]$ cd ..
[python@node projects]$ cd cmdb/

7. 部署 ipython 與 jupyter

7.1 配置pip

vi ~/.pip/pip.conf
[global]
index-url=https://mirrors.aliyun.com/pypi/simple/
trusted-host=mirrors.aliyun.com

在不同的虛擬環境中,安裝redis包,使用pip list看看效果。
$ pip -V

7.2 安裝ipython

$ pip install ipython
$ ipython

7.3 部署 jupyter

安裝Jupyter,也會自動安裝ipython
$ pip install jupyter
$ jupyter notebook help

生成配置檔案
$ jupyter notebook --generate-config
$ jupyter notebook password         # 設定 jupyter 登入密碼(也可以寫入到配置檔案中)
$ jupyter notebook --ip=0.0.0.0 --no-browser    

生成密碼
$ ipython
In [1]: from notebook.auth import passwd
In [2]: passwd()
Enter password:
Verify password:
Out[2]: 'sha1:ce23d945972f:34769685a7ccd3d08c84a18c63968a41f1140274'    # 複製密碼‘sha:ce…’

修改預設配置檔案
vim ~/.jupyter/jupyter_notebook_config.py
c.NotebookApp.ip='*'        # 在所有IP上偵聽
# c.NotebookApp.password = 'string'
# The string should be of the form type:salt:hashed-password
c.NotebookApp.password = 'sha:ce...剛才複製的那個密文'
c.NotebookApp.open_browser = False      # 禁止自動開啟瀏覽器
c.NotebookApp.port =8888                #隨便指定一個埠

啟動jupyter notebook
jupyter notebook

參考地址: http://jupyter-notebook.readthedocs.io/en/latest/public_server.html

8. python環境移植

pip freeze > requirement
pip install -r requirement

~~~~~~~~~~~~~~~~~~~~~~~~~~~
關於windows下安裝,大同小異。
~~~~~~~~~~~~~~~~~~~~~~~~~~~