The python micro framework for building web applications
Python 가상환경
How to Install
# 새로운 디렉토리를 하나 생성한뒤, 이동해주세요
mkdir flask-tutorial
cd flask-tutorial
# python 버전 확인
python -V
# Flask 설치
pip install -U Flask
# Flask Version 확인
flask --version
# Python 3.10.12
# Flask 3.0.2
# Werkzeug 3.0.1
Flask 를 사용해 컴퓨터에 간단한 Web Server를 띄워보자.
app.py
파일을 생성해서 다음 코드를 작성하자.
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello_world():
return "<p>Hello World!</p>"
if __name__ == "__main__":
app.run(debug=True, host="0.0.0.0", port=5000)
# debug 모드로 실행, 모든 IP에서 접근 허용, 5000포트로 사용하는 것을 의미
동일한 폴더에서 pyhon app.py
을 수행하여 application server를 로컬에 띄운다.
127.0.0.1:5000
으로 접속하면, Hello World!
라는 문자가 브라우저에 보인다.
5000번 포트는 mlflow에서 사용하고 있어서 5001번으로 수정함.
route()
데코레이터는 python 함수를 web server 의 URI 에 mapping 시킬 수 있습니다.app.py
파일을 아래로 수정from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello_world():
return "<p>Hello World!</p>"
@app.route("/decorator")
def hello_decorator():
return "<p>This page is decorator page</p>"
if __name__ == "__main__":
app.run(debug=True, host="0.0.0.0", port=5000)
python app.py
을 수행하여 application server 를 로컬에 띄운다.127.0.0.1.:5000
으로 접속하면 Hello World!
라는 문자가 뜨고,127.0.0.1.:5000/decorator
로 접속하면 This page is decorator page
라는 문자가 브라우저에 보이는 것을 확인할 수 있다.route()
데코레이터는 URI 뿐만 아니라 HTTP Method도 지정할 수 있다.app.py
를 아래로 수정.from flask import Flask
import json
app = Flask(__name__)
@app.route("/predict", method=["POST", "PUT"])
def inference():
return json.dump({'hello': 'world'}), 200
# http status code 를 200으로 반환하는 것을 의미.
if __name__ == "__main__":
app.run(debug=True, host="0.0.0.0", port=5000)