virtualenv is a tool to create isolated Python environments.

virtualenv 是创建独立Python开发环境的工具,用于解决同一台机器上不同的Python工程的依赖、版本以及间接权限等问题。比如项目foo1依赖Django1.3,而项目foo2依赖Django1.7,而当前全局开发环境为Django1.8,版本的不同会导致项目所需包的版本不兼容等问题,使项目无法正常运行,使用virtualenv来创建相对独立的虚拟环境,可以很好的解决此类问题。此外,值得一提的是,对于项目打包迁移,如部署Web应用项目等应用场景,virtualenv都很有用武之地。

virtualenv创建一个拥有自己安装目录的环境, 这个环境不与其他虚拟环境共享库, 能够方便的管理python版本和管理python库。

下面介绍一下与使用Virtualenv相关的技巧。

1.安装Virtualenv

$ pip install virtualenv
//或者由于权限问题使用sudo临时提升权限
$ sudo pip install virtualenv

2.virtualenv创建虚拟环境

1 virtualenv ENV
2 #创建一个名为ENV的目录,并安装了ENV/bin/python
3 #创建了lib,include,bin目录,安装了pip

lib目录 : 所有安装的python库都会放在这个目录中的lib/pythonX.X/site-packages/中 ;

bin目录 : bin/python是当前虚拟环境使用的python解析器 ;

如果在命令行中运行virtualenv --system-site-packages ENV, 会继承/usr/lib/python3.6/site-packages下的所有库, 最新版本virtualenv把把访问全局site-packages作为默认行为
default behavior.

3.激活virtualenv

1 #ENV目录下使用如下命令
2 source ./bin/activate  #激活当前virtualenv
3 #当用户名前面出现小括号括起来的虚拟环境名时,表明虚拟环境被成功激活

使用“pip list”指令可查看当前库

4.关闭virtualenv

deactivate

5.指定python版本

可使用-p PYTHON_EXE选项在创建虚拟环境的时候指定Python版本

1 #创建python2.7虚拟环境
2 virtualenv -p /usr/bin/python2.7 ENV2.7
3
4 #创建python3.4虚拟环境
5 virtualenv -p /usr/local/bin/python3.4 ENV3.4

这样可以解决不同项目python版本冲突以及和python库版本不兼容等问题。

6.生成可打包环境

某些特殊需求下,可能没有网络,我们希望直接打包一个ENV,解压后直接使用,这时候可以使用virtualenv --relocatable指令将ENV修改为可更改位置的ENV

#对当前已经创建的虚拟环境更改为可迁移
virtualenv --relocatable ./

7.获得帮助

virtualenv -h

8.官方文档

http://virtualenv.readthedocs.org/en/latest/virtualenv.html

转载于:https://www.cnblogs.com/maoguy/p/6953326.html

Python部署虚拟环境的利器——Virtualenv相关推荐

  1. Python的虚拟环境配置(pyenv+virtualenv)

    一.为什么需要配置虚拟环境 Python 2和Python 3之间存在着较大的差异,并且,由于各种原因导致了Python 2和Python 3的长期共存.在实际工作过程中,我们可能会同时用到Pytho ...

  2. python部署服务器 venv_迁移virtualenv环境

    记录一次将window上的virtualenv部署至LINUX服务器 前提 你已经使用virtualenv创建了一个虚拟的python运行环境,并且已经完成了你的应用的开发,现在需要将工程部署到服务器 ...

  3. python中虚拟环境的创建virtualenv workon

    系统中存在python2 和python3,一部分项目需要在2上面运行,一部分又要在3上面运行,在2运行的时候,可能又存在部分项目需要使用同一个扩展包的不同版本.......这些问题最后产生了这么一个 ...

  4. python安装虚拟环境virtualenv

    虚拟环境 虚拟环境是一个将不同项目所需求的依赖分别放在独立的地方的一个工具,它给这些工程创建虚拟的Python环境.它解决了"项目X依赖于版本1.x,而项目Y需要项目4.x"的两难 ...

  5. python虚拟环境venv、virtualenv

    目录 原理 创建.删除虚拟环境 激活.退出.初始化虚拟环境 导出.导入虚拟环境 pycharm+虚拟环境 部署虚拟环境 pycharm目录下idea作用 pycharm目录下venv文件内容含义 原理 ...

  6. Python的虚拟环境virtualenv

    Python的虚拟环境可以使一个Python程序拥有独立的库library和解释器interpreter,而不用与其他Python程序共享统一个library和interpreter.虚拟环境的好处是 ...

  7. 【Python配置】使用pyenv与virtualenv搭建单机多版本python多虚拟环境开发

    用pyenv 和 virtualenv 搭建单机多版本python 虚拟开发环境 pyenv可以帮助你在一台开发机上建立多个版本的python环境, 并提供方便的切换方法. virtualenv则提供 ...

  8. 使用python的虚拟环境virtualenv

    技术背景 在前面几篇博客中我们介绍了容器的使用(博客1.博客2.博客3.博客4.博客5),容器是一种系统级的隔离方案,更多的强调资源上的隔离.而这里我们要介绍的python的虚拟环境,更加强调的是依赖 ...

  9. python创建虚拟环境的方法_Python创建virtualenv(虚拟环境)方法

    本文目录 一 前言 二 通过virtualenv软件创建 三 在pycharm下创建 新建项目 四 已有项目使用和创建虚拟环境 五 参数说明 一 前言 需求: --公司之有一台服务器 -目前运行这一个 ...

  10. 【Python】Python创建虚拟环境的三种方式

    Python创建虚拟环境的三种方式比较 Python创建虚拟环境的三种方式 首先:为什么需要虚拟环境? Pipenv vs Virtualenv vs Conda 1. Virtualenv 2. P ...

最新文章

  1. 关于技术方案与架构宣讲的思考
  2. springboot 跨域解决方案
  3. nagios 监控NFS
  4. c语言程序设计第3周编程作业(数字特征)
  5. Fabric Kafka入门
  6. 消息机制学习笔记(四)—— 内核回调机制
  7. 存储过程 锁定并发_Java并发教程–锁定:显式锁定
  8. java 马踏棋盘优化_我所知道的十大常用算法之马踏棋盘算法(深度搜索、贪心思想优化 )...
  9. java void方法_Java对象类的最终void wait(long ms)方法,包含示例
  10. 阿里云周源:一篇文章读懂四代视频加密技术演进
  11. php表单验证代码实例,PHP表单验证实例代码-三体教程在线编辑器
  12. 视频编解码学习(六):YUV格式学习
  13. 腾讯云服务器ftp部署及文件上传
  14. fcntl函数的用法总结
  15. php读取excel写入数据库,PHP读取EXCEL文件写入数据库
  16. visual studio code打不开
  17. 一次nginx 502 mysql not contect 排错经历
  18. java环境classpath_JAVA中的环境变量配置 PATH CLASSPATH
  19. hdmi怎么支持2k分辨率_HDMI更新了!HDMI线用户忍受了一年的问题,终于能解决了...
  20. 一个Vue.js音乐项目

热门文章

  1. mysql的索引(一)
  2. 【Stimulsoft Reports.WPF教程】在代码中使用报表变量
  3. day6Linux命令-设置别名
  4. Windows切换窗口
  5. SpringMVC Redirect 跳转后保存Model中的数据
  6. u-boot中断功能初步分析之---------按键中断
  7. Android之解决太大太多图片造成的oom
  8. C C++如何获取当前系统时间
  9. html获取xml的数据,xml格式获取值
  10. Luogu1060 开心的金明