Python虚拟环境virtualenv
2018 年 8 月 29 日
前言
实际工作中会遇到这样的问题。
1是安装了多个python版本。因为在python2.x和python3.x同时存在的时代,有应用只支持到python2.x,有应用用的新的python3.x。这不可避免。针对这个已经有了pyenv做这个事,管理多个python版本。
但同时还有一种情况,同一服务器上多个应用用到了同一个包的多个版本。怎么办呢?
如果都装到系统目录,显然是不可行的。virtualenv就正是处理这个问题的。
他为python提供独立的虚拟环境。
使用
使用步骤:
- 安装virtualenv
pip install virtualenv
- 在应用目录内运行
virtualenv venv
创建虚拟环境。(venv是虚拟环境目录,你可以自己选择自己喜欢的名字) 进行虚拟环境后,shell提示符会变成类似下面这个。
(venv) ➜ mysite vim ~/.pip/pip.conf
- 启动虚拟环境
source venv/bin/activate
。然后做开发、测试、运行。 - 如果要退出虚拟环境。运行
deactivate
一切就是如此简单。
如此你想在虚拟环境中访问系统库。则在创建虚拟环境时加上--system-site-packages
参数即可。
更多参数可以通过virtualenv --help
了解,无需去记忆。
后记
值得一提的是因为虚拟环境这么有用。已经有名为tox的工具专门解决这一问题。
另外在Python3.3之后已经内容了venv模块。只是它并不是那么完美。
所以建议不审用virtualenv即可。