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

Azure Function部署Python代码遇依赖加载问题求助

Linux Python 3.11 Azure Function App 依赖包加载问题解决方案

针对你提到的.python_packages目录问题——Linux环境下Python 3.10及以上版本的Azure Function App,已经不再默认使用/home/site/wwwroot/.python_packages作为依赖安装路径,相关机制确实发生了变更。旧方案是针对早期Python版本(3.9及以下)的Linux函数应用,或者Windows环境的函数应用,不适用于Python 3.11的Linux实例。

一、正确的依赖部署方式(推荐)

Zip包直接上传时,Azure默认不会自动解析requirements.txt安装依赖,必须开启远程构建(Remote Build),让Azure云端自动构建环境并安装依赖。使用Azure CLI部署时,添加--build remote参数即可:

az functionapp deployment source config-zip -g <你的资源组名称> -n <你的函数应用名称> --src <本地代码zip包路径> --build remote

开启远程构建后,Azure会自动处理requirements.txt,将依赖安装到函数应用的运行时环境中,无需手动创建任何目录。

二、验证依赖是否安装成功

部署完成后,可以通过以下方式确认依赖是否正确安装:

  • 登录Azure门户,进入函数应用的部署中心,查看构建日志,确认依赖安装步骤无报错。
  • 通过SSH登录函数应用实例,执行pip list命令,查看已安装的包列表,确认requirements.txt中的包已存在。

三、常见问题排查

  1. requirements.txt路径错误:确保requirements.txt放在zip包的根目录,不要嵌套在子文件夹中,否则远程构建无法识别。
  2. 包版本不兼容:检查requirements.txt中的包是否支持Python 3.11,避免指定已废弃或不兼容的版本。
  3. 网络问题导致构建失败:如果函数应用所在的虚拟网络有出站限制,需要确保允许访问PyPI源,否则远程构建无法下载依赖。

四、应急手动安装方案(不推荐)

如果暂时无法使用远程构建,可以手动安装依赖并配置环境变量:

  1. SSH登录函数应用实例,执行以下命令安装依赖到指定目录:
pip install --target /home/site/wwwroot/.python_packages/lib/site-packages -r /home/site/wwwroot/requirements.txt
  1. 在Azure门户的函数应用配置 > 应用设置中,添加PYTHONPATH环境变量,值为:
/home/site/wwwroot/.python_packages/lib/site-packages

注意:这种方式在函数应用重启或重新部署后会失效,因为实例可能被重置,所以仅作为临时应急方案。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.18 04:27:10