【问题标题】:How to run my Django application automatically on production server [closed]如何在生产服务器上自动运行我的 Django 应用程序 [关闭]
【发布时间】:2016-02-29 01:51:12
【问题描述】:

我使用 Python 和 Django 在本地机器上构建了一个应用程序。它工作正常。现在,我想自动化该过程以在生产服务器上启动我的 Django 应用程序。

我必须做些什么来实现这一目标?

【问题讨论】:

  • 这里有一些链接可以帮助您了解如何部署 Django 项目 - Link1Link2Link3
  • runserver 的文档有一个很大的标志,说不要将它用于生产...

标签: python django gunicorn


【解决方案1】:

Django 文档不建议在生产环境中使用 Django 内置服务器。

请勿在生产环境中使用此服务器。它没有走 通过安全审计或性能测试。 (就是这样 会留下来。我们的业务是制作 Web 框架,而不是 Web 服务器,因此改进此服务器以能够处理生产 环境超出了 Django 的范围。)

建议使用gunicornuWSGI 来启动您的WSGI 应用程序:
- How to use Django with gunicorn
- How to use Django with uWSGI

另一个好的做法是使用supervisord来启动你的进程,如果它死掉或者因为某种原因被杀死,supervisord会重启这个进程

最后,使用 nginxapache 作为代理服务器,它们是可以处理费用的强大服务器。大多数教程或文档都推荐使用 nginx,因为它是一个高性能的 HTTP 服务器。

NGINX 是一个免费、开源、高性能的 HTTP 服务器和反向 代理,以及 IMAP/POP3 代理服务器。 NGINX 以其 高性能、稳定、功能丰富、配置简单、 资源消耗低。

检查这个以了解如何配置它们:
- Deploying Gunicorn with nginx
- Deploying uWSGI with nginx

另外,在部署您的 Django 应用程序之前,请阅读此清单,以确保一切都已正确配置:Django - Deployment checklist

使用此架构和工具,您将能够使用简单的 supervisord 命令启动您的 gunicorn 进程。就这样。然后 gunicorn 将启动您的 WSGI 应用程序。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-05-04
    • 2011-04-28
    • 1970-01-01
    • 2018-06-16
    • 2013-04-21
    • 2014-05-07
    • 1970-01-01
    相关资源
    最近更新 更多