Azure函数应用报错‘WorkerConfig for runtime: python not found’求助
解决Azure Functions运行时错误:
Microsoft.Azure.WebJobs.Script: WorkerConfig for runtime: python not found 核心问题分析
你遇到的问题根源是Kudu环境的Python版本与函数应用配置的版本不匹配。Azure Functions的Python Worker依赖Kudu环境中的对应版本Python来加载worker.config.json配置文件,当两者版本不一致时,就会抛出该错误。直接SSH到应用主机的环境与Kudu环境是隔离的,因此会出现主机显示Python 3.10但Kudu显示3.9的情况。
解决方案步骤
1. 强制同步Kudu与应用配置的Python版本
- 方式一:使用Azure CLI
重新设置运行时版本并重启应用,触发Kudu环境重建:az functionapp config set --name <你的函数应用名> --resource-group <资源组名> --linux-fx-version 'Python|3.10' az functionapp restart --name <你的函数应用名> --resource-group <资源组名> - 方式二:通过Azure门户操作
进入函数应用的「配置>常规设置」,先将栈临时切换为其他类型(如.NET)并保存,再切换回Python 3.10并保存,强制环境同步。
2. 清理部署缓存(若启用运行从包部署)
如果你的函数应用启用了WEBSITE_RUN_FROM_PACKAGE:
- 进入「配置>应用程序设置」,删除该设置项,重启应用后重新部署。
- 或者更新部署包的版本号,确保部署的是包含正确依赖的最新包。
3. 验证Kudu的Python路径配置
通过Kudu SSH执行以下命令,确认Python 3.10的路径是否在环境变量中:
echo $PATH ls /usr/local/bin/python*
若Python 3.10存在但未加入PATH,可在应用设置中添加PYTHONPATH环境变量,值设为/usr/local/bin/python3.10,然后重启应用。
4. 确认部署包结构合规
- 确保部署包根目录包含
host.json,每个函数文件夹包含function.json。 - 检查
requirements.txt中的依赖是否针对Python 3.10版本,避免存在版本不兼容的依赖。
内容的提问来源于stack exchange,提问作者Kilipukki
相关产品推荐
相关产品推荐

