반응형
UWSGI는 왜 필요할까?
- Django는 Web Application Server가 아닌 Web Server Framework -
배포 관련은 이전 글 참고
UWSGI 설치
설치
- 명령어 ) pip3 install uwgi
CLI를 통한 실행
CLI 명령어
- uwsgi --http :[포트 번호] --home [가상 환경 루트] --chdir [프로젝트 경로] -w [wsgi 모듈]
- 포트 번호: 사용할 포트 입력
- 가상 환경 루트: 프로젝트를 구동할 때 사용할 가상 환경 경로 입력. ) 현재 ubuntu 내에서 '~'에 대한 절대 경로는 '/home/ubunt'
- 프로젝트 경로: Git에서 Pull 받은 프로젝트 경로 ) /deploy/${프로젝트 이름}/${manage.py가 존재하는 프로젝트 폴더 경로}
- wsgi 모듈: manage.py가 존재하는 폴더 경로의 이름으로 다음과 같이 작성 ) ${모듈 이름}.wsgi
- 전체 예시 ) uwsgi --http :8000 --home /home/ubuntu/exvenv --chdir /home/ubunut/deploy/django-ex/server/ -w server.wsgi
실행 화면
ini 파일을 통한 실행
Ini 파일을 사용하는 이유
- CLI로 작성하게 되면 불편하다
- shell 파일로 관리해줄 수도 있지만 uwsgi에서 자동으로 인식해줄 수 있는 또 하나의 방법 소개
파일 생성
- manage.py 파일이 존재하는 프로젝트 폴더에 .confg/uwsgi 폴더 생성
- uwsgi 폴더 내부에 server.ini 파일 생성
- 파일 내부
[uwsgi]
chdir = /home/ubuntu/deploy/django-ex/server/
module = server.wsgi:application
home = /home/ubuntu/exvenv/
http = :8000
enable-threads = true
processes = 8
threads = 16
master = true
vacuum = true
반응형
LIST
'언어 > Python' 카테고리의 다른 글
[Python Djnango] - AWS EC2 기반 배포 (0) | 2024.03.08 |
---|---|
Django Framework 설치 방법 (0) | 2024.01.30 |