Python/Flask
Flask - uWSGI 연동하여 서버띄우기
김치카스테라
2020. 3. 18. 00:45
OS: CentOS7
대상 python 버전: python3.6
== uWSGI 설치 ==
1. epel-release 패키지 설치
* EPEL: 리눅스 환경을 위한 엔터프라이즈 추가 패키지 저장소
=> Fedora Project 에서 제공되는 저장소로 CentOS 표준 저장소에서 제공되지 않는 최신 버전의 패키지를 제공하는 저장소
yum -y install epel-release
2. ius 패키지 설치
* IUS : 엔터프라이즈 환경을 위한 (PHP, Python, Mysql ,Nginx 등) 최신 버전의 패키지를 제공
yum install \
https://repo.ius.io/ius-release-el7.rpm \
https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
3. python3.6 및 관련패키지 설치
yum -y install python36u python36u-devel python36u-pip
4. python3.6 내의 pip로 virtualenv 설치
python3.6 -m pip install virtualenv
5. pip 업데이트
python3.6 -m pip install -U pip
6. 가상환경 생성 및 활성화
python3.6 -m virtualenv <가상환경이름>
source <가상환경경로>/bin/activate
7. 프로젝트에 필요한 추가 패키지 설치
pip install flask_sqlalchemy flask pymysql requests
8. uWSGI 설치를 위한 준비
yum install -y install gcc
9. uwsgi 설치
pip install uwsgi
== Flask 프로젝트 실행 ==
10. wsgi.py 파일 생성
from flaskapp import app
if __name__=="__main__":
app.run()
11. uWSGI 를 통한 프로젝트 실행
* option: --home : 가상환경 경로, --chdir 파일위치
uwsgi --http :80 --home /home/<가상환경 경로> --chdir <프로젝트 경로> -w wsgi:app
- 이후에는 .ini 파일을 통한 간편한 실행방법 및 Nginx 와의 연동까지 진행해보아야겠다.