python部署virtualenv的虚拟运行环境

virtualenv is a tool to create isolated Python environments.       

virtualenv是创建独立Python环境的工具。

virtualenv的官方文档网站:https://virtualenv.pypa.io/en/stable/

安装

pip全局安装(如果全局安装了pip 1.3或更高版本):

$ [sudo] pip install virtualenv

或者获取最新的未发布的开发版本:

$ [sudo] pip install https://github.com/pypa/virtualenv/tarball/develop

从源代码全局安装版本XX:

$ curl -O https://pypi.python.org/packages/source/v/virtualenv/virtualenv-X.X.tar.gz
$ tar xvfz virtualenv-X.X.tar.gz
$ cd virtualenv-X.X
$ [sudo] python setup.py install

使用从本地来源:

$ curl -O https://pypi.python.org/packages/source/v/virtualenv/virtualenv-X.X.tar.gz
$ tar xvfz virtualenv-X.X.tar.gz
$ cd virtualenv-X.X
$ python virtualenv.py myVE

用法

Virtualenv有一个基本的命令:

$ virtualenv ENV

ENV放置新虚拟环境的目录在哪里它有许多通常的效果(可以通过许多选项修改):

  • ENV/lib/ENV/include/创建,包含一个新的virtualenv python的支持库文件。安装在这个环境中的软件包将存在于下ENV/lib/pythonX.X/site-packages/
  • ENV/bin被创建,其中可执行文件生活 - 显然是一个新的 Python因此,运行一个脚本 将在这个virtualenv的python下运行该脚本。#! /path/to/ENV/bin/python
  • 安装了至关重要的软件包pipsetuptools,这些软件包允许将其他软件包轻松安装到环境中。这个关联的点可以从中运行ENV/bin/pip

激活脚本

在新创建的virtualenv中,还会有一个激活的 shell脚本。对于Windows系统,为命令提示符和Powershell提供了激活脚本。

在Posix系统上,这个驻留在/ENV/bin/,所以你可以运行:

$ source bin/activate

对于某些shell(例如最初的Bourne Shell),您可能需要使用命令,当不存在时。还有一些其他shell的独立激活文件,如csh和fish。 bin/activate应该为bash / zsh / dash工作。

这会改变你$PATH的第一个入口,就是virtualenv的 bin/目录。(你必须使用source因为它就地改变你的shell环境。)这就是它所做的一切; 这纯粹是一种方便。如果您直接从virtualenv的bin/目录运行脚本或python解释器(例如path/to/ENV/bin/pip 或/path/to/ENV/bin/python-script.py),则无需激活。

activate脚本还将修改您的shell提示符以指示当前哪个环境处于活动状态。要禁用此行为,请参阅 VIRTUAL_ENV_DISABLE_PROMPT

要撤消对路径的这些更改(和提示),只需运行:

$ deactivate

在Windows上,等效的激活脚本位于该Scripts文件夹中:

> \path\to\env\Scripts\activate

然后输入deactivate以撤消更改。

根据您的活动shell(CMD.exe或Powershell.exe),Windows将使用activate.bat或activate.ps1(根据需要)来激活虚拟环境。如果使用Powershell,请参阅下面有关代码签名的注意事项。

移除环境

删除虚拟环境只需通过停用虚拟环境并删除环境文件夹及其所有内容即可完成:

(ENV)$ deactivate

$ rm -r /path/to/ENV

在windows下直接del ENV即可

Windows Notes

在的virtualenv中的一些路径是略有不同的Windows:Windows上的脚本和可执行文件中去ENV\Scripts\,而不是ENV/bin/和图书馆去ENV\Lib\,而不是ENV/lib/

要在Windows上有空格的路径下创建virtualenv,您需要安装win32api库。

不使用Virtualenv bin/python

有时你不能或不想使用由virtualenv创建的Python解释器。例如,在mod_pythonmod_wsgi 环境中,只有一个解释器。

幸运的是,这很容易。您必须使用自定义Python解释器来 安装库。但要使用库,你必须确保路径是正确的。脚本可用于更正路径。您可以像设置环境一样:

activate_this = '/path/to/env/bin/activate_this.py'
execfile(activate_this, dict(__file__=activate_this))

这将改变sys.path甚至改变sys.prefix,但也允许你使用现有的解释器。sys.path在全局项目之前,环境中的项目将首先显示但是,全局项目总是可以访问的(就像该--system-site-packages标志已被用于创建环境一样,无论它是否是)。而且,这无法撤销其他环境或已导入模块的激活。例如,您不应该尝试在Web请求之前激活环境; 你应该尽早地激活一个环境,而不是在这个过程中再做一次。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值