虚拟环境搭建

102 阅读2分钟

虚拟环境搭建

之前我们安装模块都是直接在物理环境下安装,这种安装方法,后面一次安装的会覆盖掉前面一次安装的。那如果一台机器上面开发多个项目使用到不同版本的模块呢?怎么样做才能不受版本影响!那么需要用到虚拟环境,每个虚拟环境互相隔离,在一个虚拟环境中安装卸载模块其他不受影响!

python虚拟环境安装

pip install virtualenv
pip install virtualenvwrapper
pip install virtualenvwrapper-win  #Windows使用该命令

创建目录用来存放虚拟环境

mkdir $HOME/.virtualenvs

.在~/.bashrc中添加下列两行命令:

export WORKON_HOME=$HOME/.virtualenvs    #添加系统环境变量
source /usr/local/bin/virtualenvwrapper.sh    
例:
export PATH=$PATH:~/.local/bin    #添加系统环境变量,打不到virtualenv时添加
export WORKON_HOME=$HOME/.virtualenvs   #
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3   #指定python环境
source /home/lijian/.local/bin/virtualenvwrapper.sh

find -name virtualenvwrapper.sh  #查找virtualenvwrapper.sh的目录

修改bashrc文件后需要运行:

source ~/.bashrc

创建python虚拟环境

mkvirtualenv [虚拟环境名称]   #创建虚拟环境
workon [虚拟环境名称]      #进入虚拟环境


mkvirtualenv -p /usr/bin/python2.7 py2  #创建python2虚拟环境
mkvirtualenv -p /usr/bin/python3 py3   #创建python3虚拟环境

which python3  #查找python3的安装目录

退出虚拟环境

deactivate [虚拟环境名称]

删除(慎用) 先退回虚拟环境

rmvirtualenv [虚拟环境名称]

虚拟环境中安装指定版本号的模块

1.在虚拟环境中安装模块不需要加sudo,如果加sudo会安装到真实环境中去,也不需要指定pip的版本,直接使用pip安装就可以。

workon py3 
pip install django==1.8.2

2.查看虚拟环境下安装了那些包

pip freeze list

3.项目开发完成,需要上线时,将开发环境使用的包,导出安装到生产环境下。

pip freeze list > requirements.txt

4.将开发环境导出的包的文件requirements.txt,安装到生产环境

pip install -r requirements.txt