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

部署Flask-SocketIO至Azure遇ModuleNotFoundError的解决求助

解决Azure部署Flask-SocketIO时的ModuleNotFoundError问题
  • 检查requirements.txt的拼写与格式
    确保文件里的依赖项拼写完全正确,比如是flask_socketio(下划线连接),没有多余空格、换行或拼写错误。可以直接复制本地环境中pip freeze输出的对应行到requirements.txt里,避免手动输入出错。

  • 确认requirements.txt的位置
    必须将文件放在项目根目录下,Azure App Service只会自动读取根目录的requirements.txt来安装依赖。如果放在子文件夹中,部署过程会忽略该文件。

  • 核对Python版本一致性
    本地开发使用的Python版本要和Azure App Service配置的版本一致:

    1. 本地运行python --version查看版本
    2. 在Azure门户的App Service -> 配置 -> 常规设置中,将Python版本调整为与本地一致的版本
  • 查看依赖安装日志排查问题
    登录Azure门户,进入App Service的日志流或部署中心,查看部署过程中的依赖安装日志:

    • 如果日志显示flask_socketio安装失败,可能是网络或源的问题,可以尝试在requirements.txt开头添加国内镜像源:--index-url https://pypi.tuna.tsinghua.edu.cn/simple/
    • 如果日志根本没读取requirements.txt,说明文件位置不对或部署配置有问题
  • 指定依赖的具体版本
    在requirements.txt中添加flask_socketio的具体版本号(和本地运行的版本一致),比如:

    flask_socketio==5.3.6
    

    避免因版本兼容性或pip自动安装的版本问题导致依赖缺失。

  • 清理部署缓存并重新部署

    1. 进入Azure App Service的高级工具(Kudu)
    2. 打开调试控制台 -> CMD,进入site/wwwroot目录
    3. 删除__pycache__文件夹和venv虚拟环境(如果存在)
    4. 返回Azure门户的部署中心,选择重新部署项目
  • 手动安装依赖(应急方案)
    如果自动安装始终失败,可在Kudu的CMD中手动执行安装命令:

    cd site/wwwroot
    pip install -r requirements.txt
    

    执行后查看输出的错误信息,针对性解决(比如权限问题、依赖冲突等)

内容的提问来源于stack exchange,提问作者M. Atif Altaf

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 23:15:06