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

VS Code Python部署HttpRequest1示例至Azure Function失败

Python版Azure Functions部署失败解决方案

故障核心定位

从两次重复部署的日志可以确认,Oryx云端构建环节(Python环境拉取、azure-functions依赖安装、项目文件拷贝)全部执行成功,失败触发点为构建完成后的包上传阶段,核心报错为:

Malformed SCM_RUN_FROM_PACKAGE when uploading built content

故障由两个配置不匹配问题共同导致:

  • 本地开发使用Python venv 3.8.8虚拟环境,但云端函数应用配置的Python运行时版本为3.9,跨版本构建生成的部署包元数据存在格式异常
  • Linux消费计划函数应用的SCM_RUN_FROM_PACKAGE应用设置值格式非法,平台无法识别构建完成的部署包存储路径,直接终止部署流程

注:日志中提示的pip版本过低警告不影响部署和功能运行,不需要额外处理

修复步骤

步骤1:对齐本地与云端Python版本

二选一即可:

  • 本地对齐云端:删除本地项目下旧的3.8版本虚拟环境目录,安装Python 3.9.x后重新创建venv虚拟环境,执行pip install -r requirements.txt重新安装所有依赖
  • 云端对齐本地:登录Azure控制台进入目标函数应用,在「配置-常规设置」页将Python运行时版本修改为3.8,保存后等待应用重启完成

步骤2:修复SCM_RUN_FROM_PACKAGE配置

  • 进入函数应用「配置-应用程序设置」页面,查找名为SCM_RUN_FROM_PACKAGE的配置项
  • 如果该配置值为空、或为非标准格式的自定义存储地址,直接删除该配置项,平台会在后续部署时自动生成合法配置
  • 如果需要保留从包运行模式,直接将该配置项的值设为1即可,不要手动填写自定义Blob存储URL,避免格式校验失败

步骤3:清理缓存后重新部署

  • 在VS Code的Azure Functions扩展面板中,右键目标函数应用,选择清理历史部署残留缓存
  • 确认本地项目根目录下requirements.txt文件存在,且已正确写入azure-functions依赖项
  • 重新触发部署,部署过程中不要关闭VS Code或中断网络连接

验证标准

部署完成后,直接调用创建的HttpRequest示例触发器接口,如果返回默认的函数响应内容,即为部署成功。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.02 09:16:10