【问题标题】:how to package a django project?如何打包一个django项目?
【发布时间】:2013-01-15 01:57:35
【问题描述】:

我如何打包一个项目,以便我可以调用一些运行该项目的函数?

我知道如何打包 django 应用,但我的问题是如何打包 django 项目。

目前我的项目在内部 pypi 服务器上,可以使用以下方式将其拉下:

pip install [project]

但是要使用它,我必须进入我的站点包,然后进入包,这样我才能运行

./manage.py ....

还是我最好检查项目并 pip 安装应用程序?

【问题讨论】:

  • 您是否尝试部署到生产环境?
  • 是的,我会的,目前我只是在虚拟环境中测试部署
  • 我正在使用gunicorn 而不是 wsgi(由于 gunicorn 处理异步工作人员),但正如它所说(如果我没看错的话)你需要给出一个完整的路径。我使用'./manage.py run_gunicorn ....'运行它
  • 嗯。我想我有点误解了这个问题,因为我认为你想自动启动应用程序(在生产中,manage.py 是无关紧要的)。在我们的项目中,我们通常有一个厨师脚本检查代码,pip 安装依赖项,然后运行 ​​uwsgi 指向(带有完整路径)到结帐位置。

标签: python django package pypi


【解决方案1】:

一种方法是使用您的发行版包管理系统创建一个包。在我的商店,我们使用 Ubuntu 的 aptitude。因此,使用 CMake 将我们的软件打包为 .deb。

【讨论】:

    【解决方案2】:

    这可能不是最好的方法,但您可以使用distribute 为您生成包装脚本:http://packages.python.org/distribute/setuptools.html#automatic-script-creation

    【讨论】:

      【解决方案3】:

      我对@9​​87654321@ 也有同样的问题。围绕该项目的社区提出的解决方案是以多种方式将其打包用于不同的平台,但不是作为 PyPi 模块。

      按照受欢迎程度,我的项目通常通过以下方式安装:

      • Docker 实例:docker pull <project-name> && docker-compose up
      • 克隆 git 存储库:git clone <url> && ./project/scripts/do-the-thing
      • 流浪者:vagrant up

      如果小组中有更多支持,我想推出.deb.ebuild.rpm 是有意义的,但在这个阶段,人们似乎或多或少对以上。

      【讨论】:

        猜你喜欢
        • 2019-01-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-09-03
        相关资源
        最近更新 更多