Nic*_*sta 7 python django esx rpm
我已经阅读了这个问题,我认为这是一个很好的开始,但我正在寻找更多的洞察力.
我使用Python 2.6和Django 1.2.1编写了一个应用程序.我想在没有安装Python 2.6或Django的系统上部署此应用程序.系统本身并没有安装很多东西 - sqlite3,pysqlite2,gcc等.但系统确实有Python 2.4.3.
什么是创建Python 2.6,Django和我的应用程序本身(一个标准的Django应用程序)的RPM最理智的方式,以便每个可以单独安装,以允许升级不同的组件?
我不太了解创建源RPM,但我怀疑这是可用的信息.如果有任何特别好的资源来创建源RPM,我也会很感激.
如果重要,系统是ESX 4 Update 1.
谢谢!
更新: 我从未想过,分发Python鸡蛋甚至使用setup.py是内容分发的可行解决方案.我也有兴趣听到这个消息.
除了打包Python代码时遇到的所有常规问题之外,Django项目还有一些其他问题需要处理:
在包装Transifex时,我不得不解决这些问题,建议您调查一下为了使之正常工作而设置的各个位:
/usr/share/<projectname>execfile()从中加载设置/etc/<projectname>Python 包通常使用setuptools/distribute进行分发。easy_install <package_name>通常,您可以使用(可选地使用特定版本号)安装每个 python 包(及其依赖项) 。我建议您使用 setuptools 作为我们的主要分发方法,因为:
值得您阅读的一个很好的资源是Deploying with Distribute。它专注于 Flask(另一个 Web 框架),但只需将“Flask”替换为“Django”即可解决问题:)
另一个非常适合分发和部署东西的Python工具是fabric,除了分发之外你还可以使用它(或者不使用它,只要你愿意)。例如,使用 Fabric,您可以同时在 N 个服务器上引导和安装应用程序(包含依赖项),管理多个开发、测试和生产服务器,并使用单个命令同时更新它们。
本文可能会帮助您开始使用 Fabric:使用 Fabric 进行部署
此外,我还建议您在github或bitbucket上发布您的存储库(或镜像现有的存储库),以便那些想要手动获取最新源并python setup.py install随后安装应用程序的人。setup.py 安装脚本是我之前提到的分发的一部分。
| 归档时间: |
|
| 查看次数: |
6518 次 |
| 最近记录: |