Gunicorn не запускается на экземпляре AWS EB?

#python #django #amazon-web-services #gunicorn #procfile

Вопрос:

Я развертываю проект Django на экземпляре AWS EB. Он отлично работает локально. Когда я развертываю через интерфейс командной строки, он генерирует файл Procfile, содержащий команду для запуска сервера gunicorn. Однако это еще не начало. Я могу войти по SSH в экземпляр, запустить «python manage.py runserver» или запустите строку из файла Procfile, чтобы запустить gunicorn, как запустите сервер, так и получите отличную работу. Однако это должно произойти, когда проект развернут, а это не так. Я не получаю никаких ошибок при выполнении миграции, запуске сервера или ручном запуске gunicorn. Так почему же он не запускается автоматически? После развертывания и перехода на сайт он выдает ошибку 502.

Комментарии:

1. Вполне вероятно, что вам нужно запустить на 0.0.0.0 (внешний IP-адрес), потому что localhost 127.0.0.1 не будет виден извне для внешнего Интернета.

2. @SamDolan Это видно снаружи, когда я подключаюсь по SSH и вручную запускаю gunicorn. Я нигде не вижу в настройках django, чтобы изменить это. В файле Procfile, который генерирует EB, не указан порт, но если я войду по SSH и запущу код файла Procfile, он запустит gunicorn, и я смогу получить доступ к экземпляру просто отлично. Похоже, что gunicorn не запускается при развертывании, однако я не вижу никаких ошибок в журналах.