• virtualenv 虚拟环境安装


    问题:

    工作中开发新项目时,把代码从gitlab上拉到服务器后,需要给项目新建1个虚拟环境,然后再安装项目所需要的依赖。所以这里记录一下安装虚拟环境的方法

    方法:

    (1)安装虚拟环境:virtualenv [OPTIONS] [虚拟环境名称]

    (2)安装依赖:pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple(清华镜像源)

    一、virtualenv 虚拟环境安装

       virtualenv 工具可以用来在 Linux 操作系统中创建一个虚拟的Python环境。这个环境是独立的、隔离的,拥有自己的环境安装目录(而不是把所有的第三方包等都安装在 /usr/lib/python3.4/site-packages 目录(Python3.4的默认Linux安装目录)下)。
       它可以用来解决Python项目开发和运行过程中的依赖项和版本问题,而不必和其他项目的Python环境以及全局的Python环境发生冲突。

    1、安装 virtualenv

    建议使用 pip 工具安装 virtualenv 包:

    $ pip install virtualenv
    

    2、创建虚拟环境

    安装完成后,可以使用 virtualenv 命令创建放置虚拟环境的目录:

    $ virtualenv  [OPTIONS]  [虚拟环境名称]
    
     
     

    创建原理:

       在目录 ENV 里会初始化虚拟环境的相关目录和文件,包括 Python 语言本身的环境以及 pip 等相关程序都会在这个目录里创建(拷贝)一份新的。

     
     

    ENV/libENV/include 目录中包含了虚拟环境ENV使用的库文件。在虚拟环境中安装的第三方包会安装在 ENV/lib/python3.4/site-packages 目录下。
    ENV/bin 目录里面放置了可执行文件,在里面有新安装的Python 包中的可执行程序,包括pip等相关工具。


    OPTIONS:

    --no-site-packages 参数:

       默认情况下,虚拟环境会依赖系统环境中的 sit package,就是说系统中已经安装好的第三方 package 也会安装在虚拟环境中,如果不想依赖这些 package,那么可以加上 --no-site-packages 参数建立虚拟环境。

    $  virtualenv --no-site-packages [虚拟环境名称]
    
     
     
    --system-site-packages 参数:

       如果你使用 --system-site-packages 参数创建虚拟环境,你创建的虚拟环境会继承 /usr/local/python34/lib/python3.4/site-packages

    $ virtualenv --system-site-packages ENV
    
     
     
    --extra-search-dir 参数:

       如果你使用 --extra-search-dir 参数创建虚拟环境,这允许你提供自己的 setuptools 版本,而不是使用虚拟环境中嵌入的版本。

    $ virtualenv --extra-search-dir=/path/to/distributions ENV
    

    /path/to/distributions 参数:
       指定一个包含 setuptools 以及 pip、wheels 等的目录。virtualenv 命令会在指定的目录中,寻找 wheels,但是会使用 pip 的标准的算法来选择安装的 wheel。

    除了指定的目录,搜索顺序还包含:
    1、相对于virtualenv.py 的 virtualenv_support 目录;
    2、virtualenv.py 所在的目录;
    3、当前目录;

    --version 显示软件的版本号:

    # virtualenv --version
    

    -h, --help 显示帮助信息:

    # virtualenv -h
    

    -p PYTHON_EXE, --python=PYTHON_EXE 指定生成的虚拟环境使用的Python解释器:

       默认的使用的是安装 virtualenv 的 Python 解释器

    # virtualenv -p /usr/bin/python2.6 ENV
    
     
     

    --no-setuptools 在新建的虚拟环境中不安装工具包:

    # virtualenv --no-setuptools ENV
    
     
     


    --no-pip 在新建的虚拟环境中不安装pip:

    # virtualenv --no-pip ENV
    
     
     


    --no-wheel 在新建的虚拟环境中不安装 wheel:

    # virtualenv --no-wheel ENV
    
     
     


    --extra-search-dir=DIR 指定安装新的虚拟环境时寻找工具包、pip等的目录路径,这个参数可以用来多次指定:

    # virtualenv --extra-search-dir=/usr/local/python34/bin/ ENV
    
     
     


    --prompt=PROMPT 可以为创建的虚拟环境指定提示前缀:

    # virtualenv --prompt="测试" test
    
     
     

     
     


    3、启动环境

    在新创建的虚拟环境目录中,有一个启动脚本 ENV/bin/activate ,直接使用 source 命令来启动我们新创建的虚拟环境。

    $ source ENV/bin/activate
    
     
     

       这条命令修改了当前用户的环境变量 $PATH,将我们新建的虚拟环境目录 ENV/bin/ 作为第一个元素添加到了 $PATH 中。因为在Linux系统中输入命令时,命令可执行文件的搜索路径是根据 $PATH 中配置的路径的先后顺序来的,所以接下来你执行的所有命令都将是 ENV/bin/ 中的命令(如果此目录中存在这个命令的话),新安装的模块都只会安装到该目录(ENV)中去。

     
     

     
     

    active 脚本也会修改当前用户的命令行显示,在头部会显示出当前使用的虚拟环境。

    4、退出和删除环境

    如果要退出当前虚拟环境,使用 deactivate 命令:

    $ deactivate
    
     
     

    如果需要删除我们创建的虚拟环境,只需要退出,并删除创建的文件夹即可:

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



    二、安装 virtualenvwrapper 扩展包

    Virtaulenvwrapper 是 virtualenv 的扩展包,可以把新创建的环境记录下来,不需要每次启动虚拟环境时都执行一遍 source 命令,可以更方便的管理虚拟环境。

    它可以实现:
    1、将所有虚拟环境整合在一个目录下
    2、管理(新增,删除,复制)虚拟环境
    3、快速切换虚拟环境

    1、安装 virtualenvwrapper :

    1.1 建议适用 pip 安装:

    $ pip install virtualenvwrapper 
    

    1.2 进入 用户主目录,打开 .bashrc 文件,添加如下代码:

    export WORKON_HOME=$HOME/.virtualenvs
    export PROJECT_HOME=$HOME/Devel
    source /usr/local/bin/virtualenvwrapper.sh
    
     
     

    WORKON_HOME:
       告诉 virtualenvwrapper 在哪里放置你的虚拟环境,默认是在 $HOME/.virtualenvs 目录下。如果这个目录不存在,virtualenvwrapper 运行的时候会自动创建它。

    PROJECT_HOME :
       告诉virtualenvwrapper在哪里存放你的项目的工作目录。

    1.3 然后执行 source 命令,使刚添加的代码生效:

    $ source .bashrc
    

    2、使用 virtualenvwrapper

    虚拟环境相关操作:

    workon: 列出虚拟环境列表
    mkvirtualenv [虚拟环境名称]: 新建虚拟环境
    workon [虚拟环境名称]: 切换虚拟环境
    rmvirtualenv [虚拟环境名称]: 删除虚拟环境
    deactivate: 离开虚拟环境

    2.1 使用 workon 命令,列出可以使用的虚拟环境:

    $ workon
    
     
     


    2.2 使用 mkvirtualenv 命令,创建新的虚拟环境:

    mkvirtualenv [-a project_path] [-i package] [-r requirements_file] [virtualenv options] ENVNAME

    除了-a , -i, -r, -h 所有的命令中的选项都会直接传递给virtualenv,新的虚拟环境在初始化后会自动激活(也就是进入该虚拟环境)。

    $ mkvirtualenv ENV
    
     
     

    -a 选项:可以将一个现有的项目关联到新建的虚拟环境

    $ mkvirtualenv -a phone/ phone
    
     
     

    -i 选项:可以在虚拟环境创建后安装一个或多个包
    -r选项:可以指定一个列出了要安装那些包的文件,这个参数相当于pip 的 -r 参数。

    2.3 使用 mktmpenv 命令自动生成一个唯一的名称:

    mktmpenv [(-c|--cd)|(-n|--no-cd)] [VIRTUALENV_OPTIONS]

    $ mktmpenv 
    
     
     


    2.4 lsvirtualenv 命令详细的列出我们创建的虚拟环境

    $ lsvirtualenv
    
     
     


    2.5 showvirtualenv 显示某个虚拟环境的细节描述

    $ showvirtualenv  cms
    

    2.6 rmvirtualenv 删除 WORKON_HOME 里的一个虚拟环境

    在你删除虚拟环境之前,必须先离开这个虚拟环境。

    $ rmvirtualenv  ENVNAME
    
     
     


    2.7 allvirtualenv 在WORKON_HOME里的所有虚拟环境中执行一条命令:

    allvirtualenv command with arguments

    $ allvirtualenv pip install -U pip
    

    2.8 workon 切换一个虚拟环境

    $ workon environment_name
    
     
     

    如果后面没有给出虚拟环境的名称,则会列出可以使用的虚拟环境

    $ workon
    
     
     


    2.9 deactivate 退出当前使用的虚拟环境

    $ deactivate
    
     
     


    2.10 virtualenvwrapper 打印出可以使用的命令,及简单的描述信息

     


    作者:常大鹏
    链接:https://www.jianshu.com/p/2857638f039d
    来源:简书
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
  • 相关阅读:
    jmeter入门----安装及简单使用
    python的学习路线
    利用selenium模块来编写网络爬虫
    软件测试的一些建议
    作为面试官的一些心得
    测试中常用的python第三方库
    Bootstrap:Bootstrap_table第一篇:快速用bootstrap_table(支持参数)筛选并展示数据,固定表格前几列,实现表格单元格编辑
    JS插件:fullCalendar图解
    Python脚本:实现对象集合List导入到excel表格,支持mysql,postergrsql,MongoDB
    Python脚本:实现excel表格导入到数据库,支持mysql,postgresql,MongoDB
  • 原文地址:https://www.cnblogs.com/hailin2018/p/13592048.html
Copyright © 2020-2023  润新知