将Flask服务部署到Azure

时间:2018-09-07 11:58:25

标签: python azure flask

我正在尝试将Flask App + React部署到Azure。我已经在Azure上创建了一个Web应用程序,但是我正在努力部署我的代码。

在此之前,让我告诉你我做不到的事情:

  • 使用Docker
  • 使用Git

在此限制之后,我发现的所有教程(包括正式的MS文档)对我的帮助都不大。

到目前为止,我所做的是按如下所示以zip格式上传代码: https://docs.microsoft.com/en-us/azure/app-service/app-service-deploy-zip

无论如何,有人可以告诉我最佳实践并将我链接到一些教程吗?

1 个答案:

答案 0 :(得分:1)

您可以参考我的工作步骤,然后尝试部署您的Web应用程序。正如您在Managing Python on Azure App Service中发现的那样,Azure App Service为您提供了site extension。您可以在KUDU console上安装软件包。

第1步:创建一个Azure Web应用并添加扩展程序(这里是Python 3.6.1 x64)

enter image description here

第2步:发布您的flask项目并添加web.config

web.config:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <appSettings>
    <add key="WSGI_HANDLER" value="<Your Project Name>.app"/>
    <add key="PYTHONPATH" value="D:\home\site\wwwroot"/>
    <add key="WSGI_LOG" value="D:\home\LogFiles\wfastcgi.log"/>
  </appSettings>
  <system.webServer>
    <handlers>
      <add name="PythonHandler" path="*" verb="*" modules="FastCgiModule" scriptProcessor="D:\home\Python361x64\python.exe|D:\home\Python361x64\wfastcgi.py" resourceType="Unspecified" requireAccess="Script"/>
    </handlers>
  </system.webServer>
</configuration>

第3步:切换到Kudu CMD(导航到url:.scm.azurewebapp)并命令cd Python361x64touch get-pip.py并将url https://bootstrap.pypa.io/get-pip.py的内容复制到get-pip.py(通过“编辑”按钮),然后运行python get-pip.py以安装pip工具。

enter image description here

第4步:通过python -m pip install pyodbc

安装所需的任何软件包

enter image description here

希望它对您有帮助。有任何问题,请告诉我。