2016-10-17 3 views
0

Так что я пытаюсь развернуть мой Джанго приложение (которое в основном имеет REST Apis), но когда я использую Amazon CLI, я в конечном итоге с Fedora экземпляр, в то время как я хочу использовать Экземпляр Ubuntu.Развертывание Django с АМС

Итак, я попытался сделать это, я сделал экземпляр ubuntu, сделал репозиторий моего кода, установил git на ubuntu и клонировал код с git на ubuntu. Далее, я установил все зависимости requirements.txt, и все работает в virtualenv и работает нормально.

Но вот улов, python manage.py runserver запускает его на localhost (на самом деле не удивительно). Итак, вопрос в том, как обслуживать эти apis (а не на localhost)?

+1

Не читали ли вы какие-либо чрезвычайно подробные документы о развертывании? Вы никогда не захотите использовать серверный сценарий в сценарии развертывания. –

+0

Вы получаете Fedora вместо Ubuntu, потому что вы не выбираете правильный AMI. Официальные AMI Ubuntu можно найти здесь https://aws.amazon.com/marketplace/seller-profile?id=565feec9-3d43-413e-9760-c651546613f2 –

ответ

0

Как уже упоминалось в другом ответе, runserver команда предназначена только для местного развития. Фактически вы можете заставить его слушать внешние интерфейсы, запустив его как python manage.py runserver 0.0.0.0:8000, но это плохая идея. Настройка nginx + uwsgi для запуска приложения Django очень проста. Для этого доступны несколько руководств и руководств. Вот официальный uWSGI гид. http://uwsgi-docs.readthedocs.io/en/latest/tutorials/Django_and_nginx.html

0

НЕ ИСПОЛЬЗУЙТЕ сервер разработки django на производстве. Он не построен для этого использования.

Вместо этого используйте что-то вроде эластичного бобового стебля, который поможет вам развернуть из коробки масштабируемые приложения django. Вот хороший пошаговый учебник для этого: https://www.trysudo.com/deploying-django-app-on-aws-using-elastic-beanstalk/

Смежные вопросы