gpt4 book ai didi

ubuntu - GLXGears 无法在 Docker 内部工作

转载 作者:太空宇宙 更新时间:2023-11-03 16:55:30 25 4
gpt4 key购买 nike

我正在尝试让 nvidia 硬件加速在 Docker 容器内运行。到目前为止,我没有成功。运行 glxgears 时出现以下错误。

root@fea7a51ac757:/# glxgears
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast
X Error of failed request: BadValue (integer parameter out of range for operation)
Major opcode of failed request: 154 (GLX)
Minor opcode of failed request: 3 (X_GLXCreateContext)
Value in failed request: 0x0
Serial number of failed request: 35
Current serial number in output stream: 37

我的 docker 文件是这样的

FROM osrf/ros:lunar-desktop-full
# nvidia-docker hooks
LABEL com.nvidia.volumes.needed="nvidia_driver"
ENV PATH /usr/local/nvidia/bin:${PATH}
ENV LD_LIBRARY_PATH /usr/local/nvidia/lib:/usr/local/nvidia/lib64:${LD_LIBRARY_PATH}

EXPOSE 11311
EXPOSE 11345

然后我用

启动了容器
nvidia-docker run -it  --volume=/tmp/.X11-unix:/tmp/.X11-unix   --device=/dev/dri:/dev/dri   --env="DISPLAY"   my-custom-image

我目前不知道容器内的 nvidia-driver 是否需要具有相同的版本。但我不知道如何检查这是否是问题所在。

nvidia-smi

+-----------------------------------------------------------------------------+
| NVIDIA-SMI 384.90 Driver Version: 384.90 |
|-------------------------------+----------------------+----------------------+

我用了this作为解决问题的指南,但没有成功

最佳答案

您使用的是哪个 NVIDIA docker 版本?

我问是因为直到一个月前,较新的 2.0 版本中还没有 OpenGL 支持。上个月,他们制作了一个包含 OpenGL 作为基础镜像的 dockerfile。

https://hub.docker.com/r/nvidia/opengl/

假设您在主机上安装了 NVIDIA 驱动程序并且在运行图像时传递了 x11 显示参数/绑定(bind)装载,GLX gears 应该可以在容器中的 ubuntu 存储库 (mesa utils) 中运行。这是我的 dockerfile 中的内容。

https://github.com/coreyryanhanson/dockerfiles/blob/master/glxgears/ubuntu16%20opengl/Dockerfile

启动容器时可以添加到 docker run 命令的 x11 参数是:

-v /tmp/.X11-unix:/tmp/.X11-unix \
-e DISPLAY=unix$DISPLAY

关于ubuntu - GLXGears 无法在 Docker 内部工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46586013/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com