我并不是一名Python专家,但Python确实非常有用,所以我正在努力提高自己的技能。
我正在开发一个项目,使用了'requests'和'grequests'这两个包。这两个包都有依赖关系,通常由'pip'或'easy_install'处理。这对于开发环境或安装到一两台机器上来说是可以的,但我需要将我的项目部署到200多台机器上。最佳的方法是如何将我的依赖项与我的项目打包在一起,使其具有可移植性?
Python版本为v2.7
我并不是一名Python专家,但Python确实非常有用,所以我正在努力提高自己的技能。
我正在开发一个项目,使用了'requests'和'grequests'这两个包。这两个包都有依赖关系,通常由'pip'或'easy_install'处理。这对于开发环境或安装到一两台机器上来说是可以的,但我需要将我的项目部署到200多台机器上。最佳的方法是如何将我的依赖项与我的项目打包在一起,使其具有可移植性?
Python版本为v2.7
pip freeze > requirements.txt
pip install -r requirements.txt
另外,我建议您使用virtualenv
工具以更加舒适的方式处理依赖关系。对于更复杂的解决方案(例如分布式依赖关系管理),请查看Puppet
。来自PyCon的精彩演示:使用Puppet进行依赖关系管理
使用pip
的需求文件,或者使用像buildout这样支持复杂安装并可以为您固定版本的部署工具:
[buildout]
versions = myversions
parts =
mypackage
[myversions]
mypackage = 1.0
requests = ...
[mypackage]
recipe = zc.recipe.egg
eggs = mypackage