Django/Mezzanine/S3/Bootstrap - 寻找本地开发/远程生产设置建议



我在其他地方没有任何运气,所以我感谢我在这里得到的任何帮助/建议。以下是我想做的事情的概要:

  • Mezzanine的本地开发环境,它还将为S3服务的前端,静态/媒体集成Bootstrap。
  • 使用 .gitignore 中的唯一配置文件(settings.py、API 密钥、S3 设置等)推送到 GitHub。
  • 拉取到远程生产服务器以在 Web 上发布。

我想使用 GitHub 来跟踪和显示我在网站上所做的事情。我遇到的问题是如何有效地管理 .gitignore 中的文件,以确保生产服务器上存在必要的配置。对于这种情况,"最佳实践"是什么?

本地开发环境将用于前端而不是后端的工作,但我是否应该在本地使用相同的设置以匹配生产服务器设置?例如,使用 S3 提供生产静态/媒体,将数据库更改为 PostgreSQL 进行生产等......我应该在生产服务器上手动镜像这些内容吗?

我一直在阅读的一个指南是 https://tutorial.djangogirls.org/en/但他们并没有真正提到如何管理未推送到存储库的主要后端差异。

谢谢!

编辑:找到这个 如何在Django中管理本地与生产设置? 但它已经很老了。相关?

我会尝试使用并深入挖掘django-environ的文档 还要在这个入门模板中学习 pydanny 是如何做到的,你将掌握使用 s3 进行部署的艺术 https://github.com/pydanny/cookiecutter-django

在 IRC(在 freenode 上 #django)上做了一堆搜索和聊天后,我找到了以下链接来回答我的问题:

  • https://12factor.net/
  • https://github.com/doismellburning/django12factor
  • https://github.com/joke2k/django-environ(感谢怀斯穆基加)
  • https://github.com/pydanny/cookiecutter-django(感谢怀斯穆基加)

至于将敏感的配置和特定于站点的设置信息保留在 GitHub 之外,我将遵循 12factor 并使开发/生产环境尽可能相同,但将生产配置设置保留在生产服务器上,因为本地开发环境不会依赖于它们。我还将使用 envs no prod 服务器,因此我不必更改推送到 GitHub 的代码。

最新更新