建立 fastapi 專案開發環境
這篇主要是建立基本環境,和執行環境的說明。
安裝所需套件
pip install fastapi
pip install uvicorn # ASGI server
pip install gunicorn # WSGI server
在專案中撰寫測試的程式:
from fastapi import FastAPI
app = FastAPI()
@app.get('/hello')
def hello():
return {"say": "hello"}
直接使用 uvicorn 執行:
uvicorn main:app --reload --port 8888
執行後可以在 http://localhost:8888/docs 看到 openAPI document。
gnuicorn 搭配 uvicorn 執行:
gunicorn main:app -b 0.0.0.0:8888 -k uvicorn.workers.UvicornWorker
# 下式為背景執行
gunicorn main:app -b 0.0.0.0:8888 -k uvicorn.workers.UvicornWorker --daemon
# 背景執行時若要停下來,可以使用下式查看 pid 再使用 kill 移除 proccess
ps -ef | grep gunicorn
如果環境中有安裝 PM2 (Nodejs 行程管理工具) 也可以使用 PM2 啟動行程。
pm2 --name=gunicorn start "gunicorn main:app -b 0.0.0.0:8888 -k uvicorn.workers.UvicornWorker"