You need to enable JavaScript to run this app. 使用Azure DevOps部署Azure Function时出现Kudu网络路径未找到错误
优惠活动
大模型
产品
解决方案
定价
更多

使用Azure DevOps部署Azure Function时出现Kudu网络路径未找到错误

先明确Kudu的实际作用

Kudu是Azure Function Apps、App Service平台内置的核心后台服务,所有走标准WebDeploy、ZipDeploy通道的部署操作(不管是Visual Studio右键发布、还是Azure DevOps流水线部署),最终都会调用Kudu接口完成文件上传、目录初始化、运行状态检测的全流程。你看到的所有堆栈中带Kudu标识的报错,本质是Kudu服务在目标Function App上初始化失败。

报错根因拆解

从堆栈调用链可以定位完整的故障触发路径:

  • Kudu服务启动时,需要自动在挂载的文件存储中创建部署专属目录,默认路径为D:\home\site\deployments
  • 调用系统创建目录的接口时,返回了System.IO.IOException: 网络路径未找到的错误
  • 结合你提到的「Visual Studio手动发布无异常」的前置条件,可以100%排除流水线授权、账号权限、部署包格式这类DevOps侧的配置问题,故障点完全出在Function App本身的平台存储挂载层——不是你的代码或者流水线写的有问题。
对应排查解决步骤
  • 优先执行Function App重启

    这类报错90%以上都是Azure平台侧存储挂载的临时缓存异常,在Function App概览页直接点击重启,等待服务完全启动后重新触发Azure DevOps部署,多数情况会直接恢复。

  • 校验主存储配置状态
    进入Function App的「环境变量/应用配置」页,检查关联的主存储账户状态:
    • 确认存储账户没有被误删除、没有配置防火墙拦截平台侧的访问流量
    • 确认存储连接字符串输入没有拼写错误,没有指向已经不存在的SMB文件共享路径
  • 清理损坏的部署缓存
    如果重启没生效,尝试访问Kudu后台地址https://<你的Function App名称>.scm.azurewebsites.net:
    • 如果能正常打开控制台,直接手动删除D:\home\site\deployments目录下所有损坏的配置文件,强制Kudu下次启动时重新生成目录结构
    • 如果Kudu控制台完全打不开,直接登录关联的存储账户,找到对应的文件共享根目录,删除site/deployments路径下损坏的部署XML配置文件
  • 极端场景兜底操作
    如果以上操作都没有解决,说明平台和存储账户之间的挂载映射已经损坏:在Function App配置页先删掉原有的主存储连接字符串保存,再重新输入完全一致的连接字符串并保存,强制Azure平台重新建立存储挂载关系,之后再重启Function App即可恢复。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.11.06 22:54:01