Django部署最佳实践

时间:2017-04-28 20:43:06

标签: python django deployment

Safaribooksonline.com有来自Jacob Kaplan-Moss的视频[1],关于如何部署Django应用程序。该视频来自2010年。它指的是一个网站[2],其中列出了许多相关方面。 现在,研讨会提到虚拟机,流浪者(作为部署环境)或Fabric和其他部署自动化工具。

我想知道自那以后有多少变化。我可以想到Docker取代了Vagrant。或者Heroku或AWS,而不是租用专用的物理服务器进行部署(或虚拟机)。或者使用Ansible或Chef / Puppet而不是Capistrano或Fabric。

但还有什么变化?还有什么关系?有什么不同的做法? 2017年部署生产就绪的Django应用程序的最新技术是什么。

有人能指出我的好博客/书籍/教程吗?

[1]“Django部署研讨会”,https://www.safaribooksonline.com/library/view/django-deployment-workshop/9781449396442/

[2]“现代网站的基础设施”,https://randomfoo.net/2009/01/28/infrastructure-for-modern-web-sites

1 个答案:

答案 0 :(得分:1)

老实说,这个问题的答案将非常自以为是,在不断变化的devops领域定义最佳实践可能具有挑战性。有一天,有些东西是最好的做法,而且明天有人发表关于那个上帝可怕和过时的博客文章。

有许多方法可以进行部署,但这一切都取决于您需要什么,您想要自动化多少以及需要什么级别的自定义。

  • 例如,在我目前的地方,我们使用CircleCI,Heroku,Sentry和 翻车。

  • 我之前的一位客户(三个月前)希望我们使用 CodePipeline包括CodeCommit,CodeBuild,CodeDeploy for AWS。

  • 最近我还参与了一个涉及Docker和灵活的项目 来自Google App Engine的环境。

  • 对于我的个人项目,我只使用Fabric和Heroku,但我真的很想尝试新的CodeStar或AWS上的任何名称。

定义您想要的内容,您想要如何定制它并简单地完成它。如果出现问题,只需更改即可。事情变得越来越容易,并且更换管道中的一个项目可以在几分钟内完成,而不是几天或几周。现在,每个提供商都支持Docker和CI,无论如何。

因人而异。