2017-01-04 2 views
0

우리는 django, python, PostgreSQL으로 실행되는 웹 어플리케이션을 가지고 있습니다. 우리는 또한 virtualenv를 사용하고 있습니다.Django를 파이썬과 데몬으로 실행

웹 서비스를 시작하려면 먼저 virtualenv를 활성화 한 다음 nohup을 사용하여 8080에서 서비스로 파이썬을 시작하십시오.

하지만 언젠가 nohup 프로세스가 종료됩니다. 아파치와 같은 악마로 서비스를 시작하거나, monit과 같은 것을 사용하는 방법이 있습니까?

나는이 새로운 오전, 아파치 또는 ngnix를 사용하여 응용 프로그램을 배포하는 것이 좋습니다 수 있습니다 내 실수

+4

Django 문서에는 [배치] (https://docs.djangoproject.com/en/1.10/howto/deployment/)에 대한 섹션이 있습니다. – Alasdair

+0

http://gunicorn.org/ – intelis

답변

1

을 용서하시기 바랍니다. 아파치와 함께 작업을 수행하는 방법에 대한 공식 장고 문서가 - https://docs.djangoproject.com/en/1.10/howto/deployment/wsgi/modwsgi/

아파치는 가상 환경을 지원 - mod_wsgi에의 데몬 모드를 사용할 때 바로 WSGIDaemonProcess 지침에 python-home=<path_to_your_virtual_env>을 추가

WSGIDaemonProcess django python-path=/opt/portal/src/ python-home=/opt/venv/django home=/opt/portal/ 

모범 사례를하는 방법은

,536 : 사용 mod_wsgi에 가상 환경에 설명되어
1

따라서 runserver 명령은 테스트 환경에서만 사용해야합니다. @Alasdair와 마찬가지로 Django 문서에는 이미 해당 주제에 대한 흥미로운 정보가 있습니다.

리버스 프록시로 nginx을 사용하여 gunicorn을 wsgi로 사용하는 것이 좋습니다. 더 많은 정보를 찾을 수 있습니다 here

그리고 나는 supervisor을 사용하여 gunicorn 작업자를 모니터링하고 제어하는 ​​것이 좋습니다. 더 많은 정보를 찾을 수 있습니다 here

관련 문제