Azure Function容器部署显示custom (~4) runtime原因咨询
解答:Azure Functions容器部署显示
custom (~4)的原因 这是完全正常的现象,和你的配置无关,具体原因如下:
容器部署的运行时标识逻辑
当你通过Docker镜像(哪怕是官方提供的mcr.microsoft.com/azure-functions/python:4-python3.9-slim)部署Azure Function App时,Azure平台会将其识别为自定义部署模式,因此在门户或CLI中显示运行时版本为custom (~4)。这里的~4对应镜像内置的Azure Functions主机版本(v4),而custom是平台对容器部署的统一标识,不会因为镜像是否为官方而改变。FUNCTIONS_WORKER_RUNTIME的作用范围
你配置的FUNCTIONS_WORKER_RUNTIME = "python"是给非容器部署(比如直接部署代码包到App Service环境)的场景设计的,用来告诉平台要加载哪个语言的运行时 worker。对于容器部署,运行时环境已经完全封装在镜像中,这个应用设置不会影响平台显示的运行时标识,也不需要额外配置——官方的Python Functions镜像已经内置了这个环境变量。验证运行环境正常的方式
虽然显示为custom,但只要你的函数能正常运行,说明实际运行环境是符合预期的:- 查看函数的执行日志,能看到Python 3.9的运行时信息以及Azure Functions v4主机的启动日志;
- 本地运行该镜像时,也能通过
docker exec查看容器内的FUNCTIONS_WORKER_RUNTIME环境变量,确认其值为python。
内容的提问来源于stack exchange,提问作者András Czinege
相关产品推荐
相关产品推荐

