1
我有一个码头容器,我试图运行一个pyqt应用程序。一切运作良好,除了一大块的GUI不能渲染。泊坞窗日志扔了这一点:libGL错误:无法加载驱动程序仓库在码头集装箱
libGL error: failed to load driver: swrast
X Error: GLXBadContext 169
Extension: 154 (Uknown extension)
Minor opcode: 6 (Unknown request)
Resource id: 0x6400003
X Error: BadValue (integer parameter out of range for operation) 2
Extension: 154 (Uknown extension)
Minor opcode: 3 (Unknown request)
Resource id: 0x0
...
QGLContext::makeCurrent(): Failed.
在我Dockerfile,我尝试安装几乎所有的软件包我能找到的,可能是相关的,包括mesa-utils
。
在泊坞窗,撰写文件而言,这里是什么样子:
version: '2'
services:
gui:
build: .
volumes:
- .:/usr/src
- /tmp/.X11-unix:/tmp/.X11-unix
command: /bin/bash -c "python start.py"
environment:
- DISPLAY=unix$DISPLAY
- QT_X11_NO_MITSHM=1
devices:
- "/dev/snd:/dev/snd"
- "/dev/dri:/dev/dri"
privileged: true
任何想法我可能会丢失?
有趣的一个。我怀疑问题是内核可能没有它需要的驱动程序。我个人从来没有试图让docker在gui环境中工作,所以这只是我的猜测而已。你确认主机内核已加载视频驱动程序吗? IIRC,swarst用于软件渲染,这意味着它不使用硬件GPU。 –