Mac 安装virtualenv

󰃭 2017-02-19

场景

很多情况下, 我们需要在同一台机器上, 开发运行多个python进程, 而这些进程有的需要使用python3, 有的需要使用python2, 这就导致我们经常把服务器的环境搞得很混乱

在这种情况下, 我们就可以引入virutalenv了

什么是virtualenv

virtualenv 就是为应对以上需要创建属于各个python进程的运行隔离环境而生的,

在同一个服务器中, 我们可以使用virutalenv 创建多个python隔离环境, 每个python隔离环境可以独立的运行该环境下的python进程, 并且安装对应环境中的python扩展包

比如, 有两个服务进程, 一个需要使用py2.7, 另一个需要使用py3.5, 而且可能需要安装各自的扩展包。 这时我们就可以使用virtualenv分别创建两个隔离环境, 一个用于运行python2.7, 一个用于运行python3.5即可

安装virutalenv

因为我使用的是mac, 所以一下均在mac上的操作

pip 安装

第一步, 需要安装pip pip是unix系统下python的包管理工具, 我的安装步骤如下:

curl -o get-pip.py https://bootstrap.pypa.io/get-pip.py
sudo python get-pip.py 

即可安装

使用pip安装virtualenv

sudo pip install virtualenv

这样我们就安装好了virtualenv

如何使用

比如我想隔离出python2.7的环境

分为两步

第一步: 创建隔离环境

virtualenv py2.7

这里py2.7只是一个环境名称, 可以任意起名字

这样, 在运行该条命令的目录下就会有一个py2.7的目录名, 该目录下就是创建的这个python隔离环境所需的所有内容, 包含了对应版本的python命令, pip管理工具等等内容

第二步:激活隔离环境

我们创建好环境后, 并未处于该环境中, 所以我们需要激活该环境, 仅需要一条命令

source py2.7/bin/activate

source下该环境下bin目录下的activate即可

在运行完成后, 你可以看到所在命令窗口的命令行前, 会有一个提示, 我这里是py2.7, 如下:

这就说明你现在的命令行窗口已经处于所对应的隔离环境中了

现在, 你所添加的扩展和运行的环境, 都处于这个隔离环境中了, 如果还需要一个python3.5的环境, 你可以在安装好python3.5(不要在任何隔离环境中)后, 创建隔离环境时,指定python版本即可, 如下:

virtualenv -p python3.5 py3.5

其他激活环境参考py2.7的激活

如何退出隔离环境

运行

deactivate

即可