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

Docker容器中出现AttributeError:websocket模块无WebSocketApp属性

问题解决:Docker中运行WebSocketApp报AttributeError

核心原因

你的requirements.txt同时包含了websocket==0.2.1和websocket-client==1.6.4,这两个包存在模块名冲突:

  • websocket-client是提供WebSocketApp的正确库,它的模块名是websocket
  • websocket==0.2.1是一个过时的第三方库,同样使用websocket作为模块名,安装后会覆盖前者的模块导入,导致找不到WebSocketApp属性

解决方案

  1. 修改requirements.txt:删除其中的websocket==0.2.1一行,保留websocket-client==1.6.4
    修正后的requirements.txt内容:

    gevent==23.9.1
    greenlet==3.0.1
    pytz==2023.3.post1
    websocket-client==1.6.4
    websockets==12.0
    zope.event==5.0
    zope.interface==6.1
    
  2. 重新构建Docker镜像并运行:

    docker build -t ws-test .
    docker run ws-test
    
  3. 代码无需修改:websocket-client安装完成后,import websocket会正确导入包含WebSocketApp的模块,原有代码可正常执行。

额外说明

  • 本地环境可能因安装顺序或虚拟环境隔离未触发冲突,但Docker是全新构建环境,冲突直接显现
  • websockets是独立的异步WebSocket库,与websocket-client无冲突,可保留在依赖中

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 12:55:56