gpt4 book ai didi

azure - 在 Azure 应用服务上部署 FastAPI 和 uvicorn

转载 作者:行者123 更新时间:2023-12-04 03:39:50 40 4
gpt4 key购买 nike

我想将简单的 FastAPI/uvicorn 部署到 Azure 应用服务上。

每次部署时,一切似乎都运行顺利,但当我输入 Web 应用程序的 URL 时,我会收到以下错误消息:

"Error" message

在我的本地机器上,uvicorn 工作正常。在我的网络服务上,我运行 python 3.7 和 fastapi 0.62.0。

每次部署时,我都会启动一个名为startup.sh的文档,只用一行代码:

python -m uvicorn main:app --host 0.0.0.0 --port 80

非常感谢您的帮助!

最佳答案

适用于 Linux 的 Azure 应用服务及其 Oryx 构建运行程序在识别 Python Web 应用时使用 Gunicorn(WSGI 服务器)运行它们。因此,您的启动脚本可以使用gunicorn命令在Gunicorn的工作类uvicorn.workers.UvicornWorker的帮助下启动FastAPI应用程序。

gunicorn -w 2 -k uvicorn.workers.UvicornWorker main:app

-w 表示您想要以 Gunicorn 作为主节点启动的工作线程数量。

或者,您可以使用作为gunicorn参数提供的配置文件自动计算工作人员数量,如下所示。

gunicorn --config gunicorn.py main:app

并且gunicorn.py可以具有计算gunicorn的工作进程数量和其他配置参数的逻辑,如下所示。

import multiprocessing
import os

name = "Gunicorn config for FastAPI"

accesslog = "/home/user/fastapi/gunicorn-access.log"
errorlog = "/home/user/fastapi/gunicorn-error.log"

bind = "0.0.0.0:8000"

worker_class = "uvicorn.workers.UvicornWorker"
workers = multiprocessing.cpu_count () * 2 + 1

还有一个详细的分步教程演示 How to Deploy FastAPI on Azure App Service in just 30 minutes

关于azure - 在 Azure 应用服务上部署 FastAPI 和 uvicorn,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66251679/

40 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com