linux下多版本python環境配置

pyenv

 

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 | bash

在python用戶的~/.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 install –list # 列出 pyenv 支持的所有版本

 

 

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>

python環境移植
pip freeze > requirement
pip install -r requirement

 

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

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/87022

(3)
playboyplayboy
上一篇 2017-09-12 11:16
下一篇 2017-09-12 14:17

相關推薦

  • enumerate用法和轉置矩陣求解、效率測試

    enumerate用法和轉置矩陣求解、效率測試

    2018-04-08
  • 幾個python運維面試題及答案

    1.生成隨機的20個ID ID格式要求: 時間戳_三位隨機數字號碼_8位隨機小寫字母 1506571959_089_xxkeabef datetime.datetime.now().timestamp() 返回的是時間戳,但是帶微秒 2.判斷密碼強弱 要求密碼必須由 10-15位 指定字符組成: 十進制數字 大寫字母 小寫字母 下劃線 要求四種類型的字符都要…

    2017-10-02
  • 裝飾器

    裝飾器 需求 一個加法函數,想增強它的功能,能夠輸出被調用過以及調用的參數信息 def add(x, y): return x + y 增加信息輸出功能 def add(x, y): print(“call add, x + y”) ?# 日志輸出到控制臺 return x + y p 上面的加法函數是完成了需求,但是有以下的缺點 打…

    Python筆記 2018-04-23
  • Python第二周小結

    不知不覺已經正式學習接觸Python兩周了,第二周主要開始了Python內置數據結構的學習,包括從一開始的列表list,元組tuple,字符串string,再到后來的bytes, bytearray, 以及最后的集合set。這些數據結構可以說Python最為基礎的幾種類型,想要用Python寫出漂亮的代碼離不開對他們的熟練掌握與深刻理解。這幾個結構各有各的特…

    Python筆記 2018-03-31
  • Python數據結構

    數據結構個人總結,方便以后查找。

    Python筆記 2018-04-01
  • ss

    sas

    Python筆記 2018-05-10

評論列表(1條)

  • h
    h 2017-09-13 10:53

    配置類型不錯,注意排版!

欧美性久久久久