首页 > 解决方案 > Azure DevOps 自托管 Windows 代理到 Azure Linux 函数应用部署

问题描述

我正在使用 Python 3.7 开发基于 Linux 的 Azure 函数,并尝试使用 Azure DevOps。我的 python 项目有一些要求,例如 psycopg2-binary、cython 等等。

我们已在 Azure Devops 中预配了一个自托管的 Windows 代理池。我正在构建管道,我担心部署不会成功,因为构建将在开发代理(在 Windows 上)上进行,并且部署在 Azure Functions(Linux)上。

在这种情况下我们需要一个 linux 代理吗?

请指教。

标签: pythonazureazure-devopsazure-functionsazure-function-app

解决方案


在这种情况下我们需要一个 linux 代理吗?

据我所知,您不需要使用 Linux 代理来构建 Python 项目。

可以直接使用windows代理构建的python包部署到linux azure函数。

当您使用任务(例如Azure Functions 任务Azure App Service deploy)将包部署到 Azure Function 应用时,它会直接将包和配置发布到 Azure Function 应用。

前提是部署的包满足任务要求:包是zip或者war文件。因此,您需要使用存档文件任务来打包已发布的文件。

在此处输入图像描述

如果python项目的配置可以在linux系统中运行,同样的配置也可以在linux Function App中运行。

有关将 Python 项目部署到 Azure 的更多详细信息,您可以参考此文档:将 Python Web 应用程序部署到 Linux 上的 Azure 应用服务


推荐阅读