Запуск нескольких сайтов с помощью Django Sites Framework через Gunicorn / Nginx

У меня есть CMS на основе Django, которая использует инфраструктуру сайтов Django и виртуальные хосты Nginx / Apache / mod_wsgi для запуска нескольких сайтов в разных доменах. Мы оцениваем другие варианты стека Django и работаем с CMS сне замужем сайт на новом сервере с прокси Nginx для Gunicorn (gunicorn_django, в частности).

Хотя это прекрасно работает для одного сайта, я не уверен, как настроить Gunicorn для нескольких сайтов. Проблема в том, что с Apache / mod_wsgi мы могли бы установитьDJANGO_SETTINGS_MODULE для mod_wsgi на соответствующий сайтsettings.py

import os, sys

def inflight(filename):
    """
    Calculate absolute path to the folder containing "myfile.wsgi", then
    append to the PYTHONPATH.
    """
    ROOT = ('/').join(os.path.abspath(os.path.dirname(filename)).split('/')[0:-1])
    sys.path.append(ROOT)
    sys.path.append(os.path.join(ROOT, 'website'))

    sys.stdout = sys.stderr
    # Each website should have a settings file: /www/mysite.com/website/settings.py
    os.environ['DJANGO_SETTINGS_MODULE'] = 'website.settings'
    import django.core.handlers.wsgi
    return django.core.handlers.wsgi.WSGIHandler()

В настоящий момент я думаю, что мне нужно иметь разные экземпляры Gunicorn для каждого сайта виртуального хоста, который мы запускаем, но это кажется избыточным для трафика, который мы получаем на большинство наших сайтов.

Кто-нибудь запускает Gunicorn с каркасом сайтов Django и может подсказать, как он настроен?

Ответы на вопрос(1)

Ваш ответ на вопрос