首页 > 代码库 > 点滴记录——CentOS 6.4中使用virtualenv安装swift
点滴记录——CentOS 6.4中使用virtualenv安装swift
转载请说明出处:http://blog.csdn.net/cywosp/article/details/42150141
简述
在开发过程中,经常需要使用各种第三方库,而且python又提供了pip,easy_install等工具来简化库的安装,所以很容易就会在系统python的site-packages目录中装满各种各样的库,但是这样在下面几种情况下会有问题:
这时候我们就需要一个我们可以自己创建python环境的工具,它要满足如下条件:
在开发过程中,经常需要使用各种第三方库,而且python又提供了pip,easy_install等工具来简化库的安装,所以很容易就会在系统python的site-packages目录中装满各种各样的库,但是这样在下面几种情况下会有问题:
1.没有site-packages目录的写权限,比如共享主机解决
2.不同项目依赖同一个库的不同版本,而这两个版本又不向下兼容
3.在linux下更新系统时,自动更新某些依赖库
这时候我们就需要一个我们可以自己创建python环境的工具,它要满足如下条件:
1.我们可以指定环境的位置,这样就可以将其安装在自己有权限的目录
2.可以创建多个环境,这样不同项目可以使用不同环境,即使依赖同一个库的不同版本也不会有影响
3.系统自动更新时,系统python的site-packages中库的更新不会对自己项目造成影响
virtualenv就是这样一个工具,它可以在指定位置创建一个拥有独立安装目录的python环境,该隔离环境不会与其他virtualenv环境共享模块。它的具体用法可以参考https://virtualenv-chinese-docs.readthedocs.org/en/latest/,使用virtualenv来创建独立的环境还有一个好处,它可以和pip结合快速创建项目环境。
# 导出当前环境下的所有第三方库
pip freeze > requirements.txt
# 在新环境下安装所有文件内的第三方库
pip install -r requirements.txt
创建虚拟环境及安装Swift
# 以root用户权限安装
1. 先安装
virtualenvwrapper来管理虚拟环境
easy_install virtualenvwrapper
# 如果没有easy_install,请先安装
关于
virtualenvwrapper
的使用列出虚拟环境列表
workon
也可以使用
lsvirtualenv
新建虚拟环境
mkvirtualenv [虚拟环境名称]
启动/切换虚拟环境
workon [虚拟环境名称]
删除虚拟环境
rmvirtualenv [虚拟环境名称]
离开虚拟环境
deactivate
2.在~/.bashrc中添加行:source /usr/bin/virtualenvwrapper.sh
source
~/.bashrc
#这一步也可省略,加在这里是为了以后操作方便,不用每次都执行
source /usr/bin/virtualenvwrapper.sh
3. 创建安装Swift的虚拟环境
mkvirtualenv Swift
# Swift目录将会在~/.virtualenvs中,其目录结构如下:.
├── bin
├── include
├── lib
└── lib64 -> lib
4.安装相关依赖
yum update
yum install curl gcc memcached rsync sqlite xfsprogs git-core libffi-devel xinetd python-devel python-paste-deploy python-dns
5. 切换到Swift环境中workon Swift,然后安装python相关文件包
easy_install pip
pip install setuptools coverage cffi simplejson xattr eventlet greenlet netifaces mock pbr
6. 下载swift源码并安装
git clone https://github.com/openstack/swift.gitcd swiftpip install -r requirements.txtpython setup.py install --record=file.txt
7. 配置Swift
swift的配置跟正常安装配置是一样的,因此在此省略
8. 其他
启动swift的时候一定要切换到Swift虚拟环境中,workeon Swift
对于python 2.6版本Swift 2.2.1之后的版本出现了一个小问题,详情:https://bugs.launchpad.net/swift/+bug/1403430
参考:
[1]. http://www.iitshare.com/virtualenv-isolate-python-env.html
[2]. https://github.com/lzjun567/note/blob/master/note/python/virtualenv.md
点滴记录——CentOS 6.4中使用virtualenv安装swift
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。