gpt4 book ai didi

python - 在 Heroku 上部署 Django 应用程序的最佳实践

转载 作者:行者123 更新时间:2023-11-28 16:27:03 25 4
gpt4 key购买 nike

我正在开发一个 Django 应用程序,我已经完成了大约 50%。我在一个地方,我想开始向人们展示它,因此我需要部署它。我已经决定将它托管在 Heroku 上。我想从一开始就正确地做到这一点,因此我在下面列出了问题......

这是目前的情况:

  • 我想使用 Heroku 中的新管道功能。这样我可以在我的应用程序的暂存版本和生产版本之间轻松切换。
  • 我想使用 CI 服务器(目前我正在查看 circleci.com)
  • 我正在使用 Python 3.5
  • 我想在部署中尽可能实现自动化过程,例如运行迁移和测试(如果需要)等。
  • 不确定这是否重要,但我的代码托管在 Bitbucket 中

那么,我的问题是:

  1. 显然 CI 服务器运行测试。我应该运行我的测试吗Heroku 上的暂存和生产测功机也是如此吗?
  2. 我应该从 CI 服务器直接部署到 Heroku 吗?
  3. 我应该使用什么工具来自动部署?我不能使用织物(仅限 python2),invoke看起来还没有准备好生产。我自己编写简单的部署脚本可以吗?
  4. 还有许多其他工具,例如我读到的 docker 和 tox,但我不确定是否需要其中的任何一个?
  5. 在将 Django 应用程序部署到 Heroku 时,还有什么我应该记住的?

最佳答案

  1. 我不清楚您是要运行单元测试还是验收测试,但我肯定不会在生产环境中运行它们。 (AT 会弄乱您的数据 - 如果您正在进行分析)
  2. 第二个问题的答案取决于偏好。实际的持续集成意味着,如果你插入掌握某些东西,并且它通过了每一个测试,那么它就可以开始了,所以它就可以上线了。这是个好主意,但如果您希望某个功能在特定时间上线,又不想弄乱功能开关怎么办?我认为按下按钮不会太痛。
  3. 我认为 bash 脚本足以简化构建(我是在浪费了 2 天的 grunt 流程后才这么说的..)
  4. 出于多种原因,Docker 是一个很棒的工具,但如果您正在构建单个 Django 应用程序,我认为没有必要使用它。它只会让事情变得更难(我想这意味着 +1 你还没有经历过的事情,所以它可能会引起很多头痛)
  5. 确保您的 Django secret 未提交给 bitbucket:https://github.com/matyasfodor/todo-django/blob/911614c7e41f58debe4a6369c9f0fa3cad0c52a2/todo/settings.py#L23 (没有其他 secret 是..)

关于python - 在 Heroku 上部署 Django 应用程序的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35781081/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com