Docker容器运行PyQt5应用报错libgl.so.1缺失,求解决方案
解决Docker中PyQt5启动时
libgl.so.1缺失问题 你的问题出在PyQt5依赖的系统级OpenGL库未安装——虽然通过pip安装了PyQt5包,但Ubuntu基础镜像默认不包含libgl.so.1这类图形相关底层依赖。修改Dockerfile,添加必要的系统库即可解决:
FROM ubuntu:latest # Preparing work environment ADD server.py . ADD hinto.py . RUN apt-get update && apt-get upgrade -y # 合并apt命令减少镜像层数,同时添加PyQt5依赖的系统库 RUN apt-get -y install python3 python3-pip libgl1-mesa-glx libxcb-xinerama0 # Preparing work environment RUN pip3 install PyQt5
关键修改说明:
- 合并多个
apt-get命令为一条,减少镜像构建的层数 - 添加
libgl1-mesa-glx:直接提供缺失的libgl.so.1库 - 添加
libxcb-xinerama0:部分PyQt5环境会依赖这个X11相关库,提前安装可避免后续同类报错
如果运行时仍出现其他图形相关依赖缺失,可根据具体报错信息补充安装对应库(比如libxkbcommon-x11-0、libfontconfig1等)。
内容的提问来源于stack exchange,提问作者roee attias
相关产品推荐
相关产品推荐

