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。 –