使用VirtualEnvWrapper隔离python项目的库依赖
是什么
VirtualEnv用于在一台机器上创建多个独立的python运行环境,VirtualEnvWrapper为前者提供了一些便利的命令行上的封装。
为什么要用
- 隔离项目之间的第三方包依赖,如A项目依赖django1.2.5,B项目依赖django1.3。
- 为部署应用提供方便,把开发环境的虚拟环境打包到生产环境即可,不需要在服务器上再折腾一翻。
怎么用
安装
- pip install virtualenvwrapper
- 把下面这句加到~/.bash_profile里面,如不嫌麻烦,也可以每次都手动执行。
source /usr/local/bin/virtualenvwrapper.sh
常用命令
创新的虚拟环境
- mkvirtualenv [env1]
该命令会帮我们创建一个新环境,默认情况下,环境的目录是.virtualenv/en1,创建过程中它会自动帮我们安装pip,以后我们要安装新依赖时可直接使用pip命令。
创建完之后,自动切换到该环境下工作,可看到提示符变为:
(env1)$
在这个环境下安装的依赖不会影响到其他的环境
- lssitepackages 显示该环境中所安装的包
切换环境
- workon [env]
随时使用“workon 环境名”可以进行环境切换,如果不带环境名参数,则显示当前使用的环境
- deactivate
在某个环境中使用,切换到系统的python环境
其他命令
- showvirtualenv [env] 显示指定环境的详情。
- rmvirtualenv [env] 移除指定的虚拟环境,移除的前提是当前没有在该环境中工作。如在该环境工作,先使用deactivate退出。
- cpvirtualenv [source] [dest] 复制一份虚拟环境。
- cdvirtualenv [subdir] 把当前工作目录设置为所在的环境目录。
- cdsitepackages [subdir] 把当前工作目录设置为所在环境的sitepackages路径。
- add2virtualenv [dir] [dir] 把指定的目录加入当前使用的环境的path中,这常使用于在多个project里面同时使用一个较大的库的情况。
- toggleglobalsitepackages -q 控制当前的环境是否使用全局的sitepackages目录。
文章转载:http://www.jeffkit.info/2011/08/1012/
转载于:https://www.cnblogs.com/weiok/p/4867778.html
使用VirtualEnvWrapper隔离python项目的库依赖相关推荐
- Python 项目依赖包 第三方库 生成requirements.txt的两种方法
python项目如何在另一个环境上重新构建项目所需要的运行环境依赖包? 使用的时候边记载是个很麻烦的事情,总会出现遗漏的包的问题,这个时候手动安装也很麻烦,不能确定代码报错的需要安装的包是什么版本.这 ...
- 可爱的python测试开发库及项目(python测试开发工具库汇总)
转载: https://www.jianshu.com/p/ea6f7fb69501 可爱的python测试开发库及项目(python测试开发工具库汇总) github地址 相关书籍下载 Python ...
- python怎么创建txt文件啊_搞定Python项目依赖:requirements.txt文件的创建和使用
Python的强大在于它拥有数量众多的第三方库协助开发,在编写Python项目时,我们经常会使用很多第三方模块.由于不同设备和系统的差异性,导致我们很难分散地控制项目依赖(头铁的同学请绕道),于是re ...
- python 生成动态库_Python 项目转.so动态库
最近, 作者遇到一个需求, 需要把Python的工程部署到别的集群, 但是又要保证Python代码的安全性. 于是上网搜索, 搜到几个解决方案, 但是都不是符合需求. 综合搜到的几个解决方案, 最终作 ...
- 引入yml依赖包_手把手教你发布 Python 项目开源包
编译:机器之心,作者:Gabriel Lerner.Nathan Toubiana 好不容易码了个 python 项目,是不是很兴奋?那么怎么把这个项目发出去让大家看到呢?本文作者写了一份在 GitH ...
- 查找python项目依赖并生成requirements.txt——pipreqs 真是很好用啊
查找python项目依赖并生成requirements.txt 转自:http://blog.csdn.net/orangleliu/article/details/60958525 一起开发项目的时 ...
- python导入标准库对象的语句_Python项目中如何优雅的import
Python项目中如何优雅的import 前言 之前有一篇关于Python编码规范的随笔, 但是写的比较杂乱, 因为提到了import语句, 在篇文章中, 我专门来讲Python项目中如何更好的imp ...
- VS远程开发(远程调试)编译报错:对‘xxx’未定义的引用(设置库依赖顺序)(已解决)pthread(项目-->属性-->链接器-->输入-->库依赖项)
如图在VS中对linux进行远程开发时,编译报错: 貌似是因为在代码中使用了pthread.h的函数,链接库依赖顺序出了问题,我在ubuntu里手动使用gcc main.c -lpthread -o ...
- pipreqs生成python项目依赖清单
pipreqs生成python项目依赖清单 环境 pip install pipreqs 在项目目录下 pipreqs ./ 报错: Traceback (most recent call last) ...
最新文章
- java arcengine_在Java程序中调用ArcEngine
- ORACLE查看当前连接用户的权限信息或者角色信息
- java字符串根据空格截取并存进list,并在每个元素前后加上/
- mysql添加枚举约束语句_mysql8 参考手册--MySQL如何处理约束
- 由奥迪车灯想到的前端动画
- sqlserver实验心得体会_sqlserver 关于DBCC CHECKDB的总结
- 拼包函数及网络封包的异常处理
- 计算机网络应用基础试题6,计算机网络应用基础试题
- R语言入门(3)——R包的使用
- docker20.10.7及以下版本安装registry镜像库指引
- 几本适合嵌入式软件工程师阅读的电子入门书
- Java8 Lambda表达式教程
- 作为一个it码农一天不学习你会不会觉得心里不安
- String 占位符
- php缓存远程图片接口,Android_Android远程获取图片并本地缓存,对于客户端——服务器端应用 - phpStudy...
- Win10 win11 同一个Wifi网络(其实不是) 网络共享找不到对方主机办法
- 评测 R7 7735HS和i5 12500h选哪个 锐龙R77735HS和i512500h差距
- cv2 EigenFace(特征脸)
- 服务器上挂网站怎么挂,网站怎样上挂到云服务器
- python语言玫瑰花_python 实现漂亮的烟花,樱花,玫瑰花