시작 시 venv를 사용하여 uWSGI/Gunicorn 서버를 실행할 수 있습니까?

시작 시 venv를 사용하여 uWSGI/Gunicorn 서버를 실행할 수 있습니까?

uWSGI 또는 Gunicorn 서버로 명령줄에서 실행되는 작은 .py/Flask 응용 프로그램이 있습니다.

Flask 웹사이트에서는 이러한 유형의 서버, 즉 특히 Flask 애플리케이션을 간단히 실행하는 쉬운 방법을 보여줍니다. venv에서 내 소스 코드를 사용하는 경우.

시작 시 venv에서 uWSGI 서버 또는 Gunicorn 서버를 실행하는 방법을 알고 계십니까?

저는 기본적으로 Flask 애플리케이션과 Python3 서버를 테스트하기 위해 몇 가지 간단한 소스 코드를 실행하고 있습니다.

답변1

시작 시 venv에서 uWSGI 서버 또는 Gunicorn 서버를 실행하는 방법을 알고 계십니까?

가상 환경을 생성해야 하며하드코딩된 경로uWSGI 또는 Gunicorn에.

부팅 시 애플리케이션을 시작하려면 다음을 사용하세요.체계또는가정 교사.

감독자를 사용하는 예.

# content from /etc/supervisor/conf.d/microblog.conf

[program:microblog]
command=/home/ubuntu/microblog/venv/bin/gunicorn -b localhost:8000 -w 4 microblog:app
directory=/home/ubuntu/microblog
user=ubuntu
autostart=true
autorestart=true
stopasgroup=true
killasgroup=true

Miguel의 튜토리얼을 확인하세요.Linux에 배포세부.

답변2

나는 Simba가 Supervisor에서 설명한 내용을 통해 시스템화된 .service 파일을 사용하여 깔끔한 방법을 찾았습니다.

...

[Unit]
Description=Gunicorn Server for a Flask/Python3 Application

[Service]
WorkingDirectory=/home/debian/virt
ExecStart=/home/debian/virt/env/bin/gunicorn -b 0.0.0.0:5000 -w 4 TheNameOfMyPythonApp:app

[Install]
WantedBy=multi-user.target

그래서 방금 [Service] 섹션에서 내 디렉터리를 설명한 다음 ExecStart=를 사용하여 내 환경에서 Gunicorn 위치를 시작했습니다.

관련 정보