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

导入Azure存储相关包后,部署Python函数应用至Azure无法显示的问题

Azure Python函数部署后不可见问题(含azure.storage.blob/azure.identity导入时)

问题背景

开发首个Python Azure函数应用,仅实现Blob文件创建的简单功能,本地运行正常,但部署至Azure后无法看到该函数应用。移除以下导入代码后,部署即可正常生效:

from azure.identity import DefaultAzureCredential
from azure.storage.blob import BlobServiceClient, BlobClient, ContainerClient

完整代码如下:

import logging
import datetime
import azure.functions as func

from azure.identity import DefaultAzureCredential
from azure.storage.blob import BlobServiceClient, BlobClient, ContainerClient

app = func.FunctionApp()
    
@app.timer_trigger(schedule="0 * * * * *", arg_name="myTimer", run_on_startup=False, use_monitor=False) 
def timer_trigger(myTimer: func.TimerRequest) -> None:
     
    logging.info('Python timer trigger function executed.')

问题原因

核心原因是部署环境缺少依赖包:本地环境已安装azure-identity和azure-storage-blob,但部署到Azure时,这两个依赖未被正确声明或安装,导致函数启动时导入失败,Azure无法识别到有效的函数实例。

Azure Functions部署Python函数时,会严格依据项目根目录的requirements.txt文件安装依赖。若该文件未包含上述两个包的声明,部署环境将缺少对应库,触发导入异常,最终导致函数启动失败、门户无法显示函数。

解决方案

  1. 更新requirements.txt文件
    在项目根目录创建或修改requirements.txt,添加以下内容(版本号可根据本地实际使用版本调整):
azure-functions>=1.17.0
azure-identity>=1.12.0
azure-storage-blob>=12.19.0
  1. 重新部署函数应用
  • 使用Azure Functions Core Tools:运行命令 func azure functionapp publish <你的函数应用名称>
  • 使用VS Code Azure扩展:通过扩展重新部署,确保部署过程包含requirements.txt文件
  1. 验证部署结果
    部署完成后登录Azure门户,查看函数应用是否能正常显示timer_trigger函数;同时查看函数日志,确认无导入错误。

额外注意事项

  • 必须通过requirements.txt管理依赖,禁止手动在Azure App Service环境中安装依赖,确保部署流程自动处理依赖安装
  • 若使用虚拟环境,建议通过pip freeze > requirements.txt导出依赖,避免遗漏必要包

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.15 22:12:42