zoukankan      html  css  js  c++  java
  • Python--virtualenv

    同一台服务器上部署多个项目时,项目可能使用不同版本的django或者其它不同的python库,这种情况下可以使用virtualenv来创建独立的python运行环境,将不同项目的运行环境隔离出来。

    virtualenv可以创建一个拥有自己安装目录的环境,  能够方便的管理python版本和管理python库。

    安装

    pip install virtualenv
    

    创建环境

    基本命令:

    virtualenv ENV
    

    即在ENV目录创建了一个新的虚拟环境。

    pip和setuptools已在虚拟环境中自动下载完毕,可以使用这些工具来下载python包。

    下载的python包置于ENV/lib/pythonX.X/site-packages中。

    当前使用的python解释器为ENV/bin/python。

    激活与退出虚拟环境

    激活命令:

    $ source bin/activate
    

    退出虚拟环境:

    $ deactivate
    

    删除虚拟环境

    退出虚拟环境后删除目录即可:

    (ENV)$ deactivate
    $ rm -r /path/to/ENV
    

    继承全局python库

    使用以下命令可以创建继承使用/usr/lib/python2.7/site-packages下的python全局库的虚拟环境

    virtualenv --system-site-packages ENV
    

    不使用虚拟环境中的python解释器

    如果不想或者不能使用虚拟环境中的python解释器bin/python,需要修改使用的python库的路径。

    bin目录下有一个文件activate_this.py:

    """By using execfile(this_file, dict(__file__=this_file)) you will
    activate this virtualenv environment.
    
    This can be used when you must use an existing Python interpreter, not
    the virtualenv bin/python
    """
    

    更改路径:

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

    生成可打包的环境

    $ virtualenv --relocatable ENV
    

    指定python版本

    -p PYTHON_EXE, --python=PYTHON_EXE:指定生成的虚拟环境的python版本

    virtualenv -p /usr/bin/python2.7 env
    

    uwsgi中使用virtualenv

    部署django项目时,可以使用uwsgi的几个选项来指定项目使用的虚拟环境,--home,--virtualenv,--venv,--pyhome选项,都可简写为-H。

    在uwsgi配置文件中添加virtualenv <path to env>或者运行命令时$ uwsgi -H myenv。

  • 相关阅读:
    Python全栈-第四课 学习笔记
    Python全栈-第三课 学习笔记
    Python全栈-第二课 学习笔记
    计算机网络技术-交换基础和Vlan间路由 学习笔记
    Linux运维-04系统管理和操作命令
    Linux运维-03远程连接
    Linux运维-02操作系统和系统安装(虚拟机)
    Linux运维-01硬件组成概念介绍
    计算机网络技术-路由-OSPF 学习笔记
    python基础 day17 模拟博客园登录
  • 原文地址:https://www.cnblogs.com/linxiyue/p/7565999.html
Copyright © 2011-2022 走看看