Azure Function应用程序显示部署为Docker映像的映像的自定义运行时

olhwl3o2  于 2023-02-05  发布在  Docker
关注(0)|答案(1)|浏览(155)

我正在通过Terraform部署一个Azure函数作为一个Docker映像,并使用mcr.microsoft.com/azure-functions/python:4-python3.9-slim映像作为基础。
我没有找到关于为什么运行时版本仍然是custom (~4)的解释,如下图所示。
[配置页,函数运行时设置]

我尝试为功能应用程序指定以下应用程序设置:
FUNCTIONS_WORKER_RUNTIME = "python"
这不会更改任何内容,函数在使用或不使用此设置的情况下均有效。
根据所有Microsoft文档,没有证据表明为什么它显示custom (~4)而不是~4
这是因为docker映像而完全正常,还是因为缺少某些配置?

zaqlnxep

zaqlnxep1#

根据所有Microsoft文档,没有证据表明为什么它显示custom (~4)而不是~4
Azure函数映像mcr.microsoft.com/azure-functions/python:4-python3.9-slim指出,带有Azure函数核心工具版本4的Python 3.9版本:

如Azure Functions Python的Terraform官方文档所示,您必须将FUNCTIONS_WORKER_RUNTIME指定为python

app_settings {
    FUNCTIONS_WORKER_RUNTIME = "python"
  }

当您将Python docker Azure Functions的基础映像部署到云中的Azure Function应用程序时,如果在Terraform代码中指定,则Function Worker运行时将设置为Python:

Azure Portal在两种情况下都显示运行时版本的自定义(~4)。
如果您已经在terraform代码中的function app resource下指定了version = "~4",那么函数运行时版本在Azure门户中设置为4,如上面的Same Terraform文档所示。
即使Python 3.9版本在Azure Functions核心工具的V4和V3中都受支持,如本MS文档中所述,您使用的是Python 3.9 Azure Functions的版本4。因此,运行时版本是应用程序设置配置菜单设置为4。
请参阅此MCR Doc以获取Azure Functions - Docker上下文中支持的Python版本到Azure Functions核心工具版本的列表

相关问题