[Python] Flask 프레임워크 사용하기
파이썬 플라스크 Framework start
- 기본 설치와 설정은 되었는 것으로 전제
- 참고 : 파이썬 웹 시작하기 https://codens.info/1684
//==============
* 가상 환경 만들기
- VirtualenvWrapper 사용
mkvirtualenv flask1
workon flask1
//==========
* uwsgi 설치
pip3 install uwsgi
sudo apt-get install uwsgi-plugin-python
* uwsgi 설정
cd ~
mkdir flask1
cd flask1
~/flask1/uwsgi.ini 파일 생성
[uwsgi]
chdir = /home/ubuntu/flask1
virtualenv = /home/ubuntu/.virtualenvs/flask1
#home = /home/ubuntu/.virtualenvs/flask1 #가상환경경로
daemonize=/home/ubuntu/.virtualenvs/flask1/wsgi_daemon.log
logger = file:/home/ubuntu/.virtualenvs/flask1/wsgi.log
#uid = ubuntu #gid = ubuntu
chmod-socket=666
#chown-socket = ubuntu:ubuntu
socket = 127.0.0.1:3031
#socket=/tmp/uwsgi_flask1.sock
#stats = 127.0.0.1:9191
#master = true #processes = 4 #threads = 2 #vacuum = true
#enable-threads = true #single-interpreter = true #lazy-apps = true
#module = wsgi:application
#module = flask1.wsgi
callable = app
wsgi-file = routes.py
- uwsgi 시작
uwsgi uwsgi.ini
- 종료 방법 : sudo killall -9 uwsgi
- uwsgi 시작이 안되는 경우, 쉘이 zsh라면 bash로 바꾼다.
//======================
* Nginx 설정
/etc/nginx/sites-available/default 파일에 다음을 추가
#===========
# flask1
server {
#listen 8080 ;
#listen [::]:80 ;
server_name flask1.test;
#root /home/ubuntu/flask1;
#index index.html index.htm;
location / {
try_files $uri @app;
}
location @app {
include /etc/nginx/uwsgi_params;
uwsgi_pass 127.0.0.1:3031;
#uwsgi_pass unix:/tmp/uwsgi_flask1.sock;
}
}
- nginx 재시작
sudo service nginx restart
//============
* Flask 설치
cd ~/flask1
pip3 install flask
* 폴더 파일 생성
//=================
- routes.py 파일 생성
from flask import Flask, render_template
app = Flask(__name__)
@app.route("/")
def home():
return render_template("home.htm")
@app.route("/hello")
def salvador():
return "Hello, there"
if __name__ == "__main__":
app.run(debug=True)
//===================
- templates/home.htm 파일 생성
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="utf-8">
<title>home</title>
</head>
<body>
<h3> Flask home</h3>
</body>
</html>
//===============
//참고
https://code.tutsplus.com/ko/tutorials/an-introduction-to-pythons-flask-framework--net-28822
https://medium.freecodecamp.org/how-to-build-a-web-application-using-flask-and-deploy-it-to-the-cloud-3551c985e492