在virtualenv下deploy python程序

[b]virtualenv:[/b][url]http://pypi.python.org/pypi/virtualenv[/url]

virtualenv可以建立一个干净的python运行环境,可以有单独的python运行文件和库,从而将其它环境隔离开来,更换和升级库也不会对其它的程序造成影响。

通过setuptools可以直接安装: easy_install virtualenv

如果easy_install安装不成功,则可下载安装包,解压后运行:python setup.py install

[b]新建env[/b]
如下命令新一个环境ENV, 将在当前目录下新建一个名为ENV的文件夹,python解释程序和一些库会安装到该文件下。对windows和linux所建的子文件夹不同。

python virtualenv.py ENV
#or: virtualenv ENV


(1)windows
> Scripts: 可运行脚本和python解释器,easy_install也安装在该目录
> Lib: 一些标准库和site-packages子目录
使用环境:Scripts\activate.bat; 停止使用Scripts\deactivate.bat

(2)linux
> bin
> lib
> include
使用环境:source bin/activate; 停止使用deactivate

virtualenv新建环境时,easy_install和pip也将安装。这样当激活环境后使用easy_install安包时,将安装在ENV环境下。

使用如下命令来检测环境变量:

source bin/activate
python
>>>import os
>>>for i in os.path:
>>> print i

可以发现ENV下文件夹在python标准安装之前,这样需要import一个包时,会优先从ENV环境下寻找,然后再是标准安装。新建环境时使用--no-site-packages将不使用标准的site-packages:
[code]
python virtualenv.py --no-site-packages ENV
[/code]

当需要使script自动使用ENV环境时,将如下行添加在script文件开始处:

#!/path_to_env/bin/python


[b]For Reference[/b]
[code]
cd /srv/pyenv
python virtualenv osqa
cd osqa
cp ~/OSQA /osqa
[/code]
/srv/pyenv/osqa路径下将包含如下子文件夹:bin,lib,include,osqa,即将程序文件夹osqa放在环境osqa下与bin,lib同一级。

[b]参考[/b]
[list]
[*][url]http://www.rainsts.net/article.asp?id=1004[/url]
[*][url]http://imtx.me/archives/1519.html[/url]
[*][url]http://lucumr.pocoo.org/2008/7/17/deploying-python-web-applications/[/url]
[*][url]http://pypi.python.org/pypi/virtualenv[/url]
[/list]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值