fastapi 一般是使用 uvicorn 啟動(dòng)的,gunicorn需要對(duì)uvicorn包裝。
使用supervisor管理進(jìn)程時(shí),
gunicorn --worker-class="uvicorn.workers.UvicornWorker" main:app --bind 0.0.0.0:8040 --workers 1 --timeout 120 --threads 2
啟動(dòng)時(shí),遇到了,無(wú)法連接端口的問(wèn)題:
[ERROR] Connection in use: ('0.0.0.0', 8040)
問(wèn)題:
在主程序(main)中使用了
if __name__ == "__main__": uvicorn.run(app, host="0.0.0.0", port=8040, access_log=True, reload=False, log_config=defaultLoggingConfig.log_config)
導(dǎo)致8040端口被占用,需要?jiǎng)h除上面行。
本文摘自 :https://www.cnblogs.com/