2017-01-01 115 views
3

我有一个具有多租户结构的Django + Postgres应用程序,我没有将此类应用程序部署到AWS的经验。我遵循一般的Elastic Beanstalk教程来部署一个简单的应用程序。 (https://realpython.com/blog/python/deploying-a-django-app-to-aws-elastic-beanstalk/)但是,我正在寻找一种解决方案,使我能够更灵活地创建不同的“网站”。目前,我已经学会通过本教程创建不同的网站(http://mycodesmells.com/post/django-tutorial-multi-tenant-setup)。如何将多租户django应用程序部署到AWS?

所以我有以下问题:

  1. 如何部署该应用程序(我扶着走向不使用弹性魔豆,但只是把它部署到EC2)
  2. 我怎么能部署该应用程序后,创建不同的网站。

回答

2

以下应该有所帮助:

  • 设置您.ebextensions所以Django项目与eb deploy部署。
  • 如果需要,可以使用AWS S3为媒体文件设置django-storages
  • 购买域名并使用AWS Route 53进行设置(您也可以通过Route 53购买)。
  • 将您的根域别名指向您的Elastic Beanstalk应用程序。
  • 将通配符域也指向您的应用。
  • 设置AWS SES以将域电子邮件保存到AWS S3存储桶。您也可以使用其他提供商,SES只是最简单的。
  • 为HTTPS支持提供AWS ACM证书。

你现在有你的网站.example.com下工作,并且可以使用tenant.example.com指一个客户端的设置 - 它指的是相同的部署,但有不同的Host头,它可以让Django的租户架构来区分客户。你有通配符转发,除了在Django中添加新租户外,不需要任何其他设置。

相关问题