Virtualenv
Virtualenv用于创建独立的Python环境,多个Python相互独立,互不影响,它能够:
在没有权限的情况下安装新套件;
不同应用可以使用不同的套件版本;
套件升级不影响其他应用
注:以下操作均在Ubuntu 14.04.3 LTS 下完成
安装
sudo pip install virtualenv
Virtualenv基本使用
virtualenv ENV
or
# 为环境指定Python解释器
virtualenv --no-site-packages --python=python3.4 py3env
注:以上命令中的ENV以及py3env均是目录,运行以上命令会在当前文件夹下生成对应目录ENV 和 py3env,--no-site-packages
指定不包括依赖于系统的安装包
激活虚拟环境
source ENV/bin/active
or
source python3/bin/active
离开虚拟环境
deactive
删除虚拟环境
直接删除目录即可
rm -rvf ENV python3
Virtualenvwapper
Virtualenvwapper是Virtualenv的扩展包,用于方便管理虚拟环境,它能够:
将所有虚拟环境整合在一个目录下;
管理(新增、删除、复制)虚拟环境
切换虚拟环境
安装Virtualenvwapper
# 首先,要确保virtualenv已经安装
sudo pip install virtualenvwapper
加载virtualenvwrapper
在$HOME/.bashrc
中添加:
export WORKON_HOME=$HOME/.virtualenvs
# export PROJECT_HOME=$HOME/Devel
source /usr/local/bin/virtualenvwrapper.sh
然后,运行
source ~/.bashrc
创建虚拟环境目录
默认创建的虚拟环境位于~/.virtualenvs
目录下,可以通过环境变量$WORKON_HOME
来定制。如果~/.virtualenvs/
目录存在,继续,否则创建目录用来存放虚拟环境。
mkdir $HOME/.virtualenvs
创建虚拟环境
mkvirtualenv py2env
创建后,虚拟环境会自动激活,注意shell提示符的改变
(py2env)ubuntu@ubuntu-virtual-machine:~$
列出所有虚拟环境
lsvirtualenv
激活虚拟环境
workon py2env
进入虚拟环境目录
cdvirtualenv
进入虚拟环境的site-packages目录
cdsitepackages
列出site-packages目录的所有软件包
lssitepackages
停止虚拟环境
deactive
删除虚拟环境
rmvirtualenv py2env
重建Python环境
冻结
所谓冻结(freeze)
环境,就是将当前环境的软件包等固定下来。
pip freeze > requirements.txt
重建
重建(rebuild)
环境就是在部署的时候,在生产环境安装对应版本的软件包,不要出现版本兼容等问题。
pip install -r requirements.txt