You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure Web App部署失败排查:Node.js+React项目遇Python版本错误

解决Azure部署Node.js/React应用时Oryx检测到不支持Python 3.8的问题

问题根源

你的项目未使用Python,但Oryx的自动平台检测机制会扫描目录内的Python相关配置文件(如requirements.txt、runtime.txt),或Azure应用服务配置中存在Python相关设置,导致误触发Python环境检测。当前部署环境不支持Python 3.8,因此引发部署失败,日志中“Found 0 issue(s)”是因为Oryx的问题扫描未覆盖平台版本不兼容的场景。


解决方案

1. 清理项目中的Python残留文件

  • 检查项目根目录及子目录,删除所有无关的Python配置文件:requirements.txt、runtime.txt、Pipfile、Pipfile.lock、setup.py等
  • 确保.gitignore或部署忽略规则排除这些文件,避免被打包上传

2. 强制指定Node.js平台,禁用自动检测

在Azure应用服务的配置 > 应用程序设置中添加以下参数,强制Oryx仅处理Node.js环境:

  • 新增设置:SCM_DO_BUILD_DURING_DEPLOYMENT = true
  • 新增设置:ORYX_BUILD_COMMAND = oryx build --platform nodejs --platform-version 20 -o /home/site/wwwroot

若使用Azure CLI进行Zip部署,可直接在命令中指定平台:

az webapp deployment source config-zip --resource-group <你的资源组名> --name <你的应用名> --src <本地压缩包路径> --build-command "oryx build --platform nodejs --platform-version 20"

3. 重置应用服务运行时版本

  • 进入Azure门户,打开目标Web App的配置 > 常规设置
  • 确认堆栈设置为Node.js,版本选择20 LTS(与部署命令中的版本保持一致)
  • 若之前配置过Python堆栈,切换后保存设置并重启应用服务

4. 查看详细日志定位触发点

  • 通过Azure门户的部署中心 > 日志查看完整构建日志,确认Oryx是从哪个文件触发了Python检测
  • 或访问Kudu控制台,查看/tmp/build-debug.log文件,获取平台检测的详细过程

内容的提问来源于stack exchange,提问作者IamPrommate

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 19:23:23