V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
xuegy
V2EX  ›  Docker

求一个能支持 OpenGL 的 CentOS 7 镜像,或自己制作的步骤。

  •  1
     
  •   xuegy · 2021-01-25 00:30:48 +08:00 · 1941 次点击
    这是一个创建于 1177 天前的主题,其中的信息可能已经有所发展或是发生改变。

    本人目前在 Mac 上开一台 CentOS 7.9 虚拟机跑一个图形界面的工业软件,系统开销实在太大,想试试换成 docker 输出到 X11 窗口使用。

    该工业软件非常挑剔,要求必须 RHEL 或 CentOS 7,强行安装在其他 Linux 上无法正常启动。现在 vmware 虚拟机里面查看 OpenGL 版本是

    OpenGL version string: 3.3 (Compatibility Profile) Mesa 18.3.4

    可以确定软件能正常运行。

    在网上找了半天,有一个 Alpine 的,https://github.com/utensils/docker-opengl 除了操作系统不对都符合我的要求,但我找不到 CentOS 7 的。想自己装一个可是 llvmpipe 这块实在是一点也不懂,mesa 网站的文档 https://docs.mesa3d.org/drivers/llvmpipe.html 也是假定读者熟悉 OpenGL,各种默认跳步,对我来说简直是天书。

    求高人指点。

    第 1 条附言  ·  2021-01-25 12:28:51 +08:00
    为防止阅读理解问题,再简单的写一下:
    主机:macOS 10.15
    Docker 系统:CentOS 7
    Docker 显卡:CPU 运行 llvmpipe(也叫 Gallium)软件渲染,glxinfo 能出信息应该就算成功了,但怎么装这个 driver 我搞不懂。
    Docker 程序输出到 X11,Mac 系统用 xquartz 接收,有现成的教程。
    15 条回复    2021-01-25 17:28:39 +08:00
    fzinfz
        1
    fzinfz  
       2021-01-25 00:53:51 +08:00
    xuegy
        2
    xuegy  
    OP
       2021-01-25 02:21:19 +08:00 via iPhone
    @fzinfz 首先 Mac 就不是 N 卡...
    ETiV
        3
    ETiV  
       2021-01-25 02:31:46 +08:00 via iPhone
    https://github.com/tashrifbillah/glxgears-containers

    找到了这么个项目,Lz 看看像不像(方向对不对)
    Google 关键词:macOS "centos 7" opengl with gpu support
    xuegy
        4
    xuegy  
    OP
       2021-01-25 06:18:04 +08:00 via iPhone
    @ETiV 不需要 gpu support,只要 CPU 跑 llvmpipe 就够了(具体的我也没看懂,但肯定是不需要显卡)
    Cooky
        5
    Cooky  
       2021-01-25 07:42:16 +08:00 via Android
    mesa 默认带着 llvmpipe 吧,没有的话就包管理器搜一下
    kokutou
        6
    kokutou  
       2021-01-25 08:17:59 +08:00 via Android
    你现在的系统桌面卸掉换成 x11 不就行了。。。
    先建个快照在搞呗。。。
    xuegy
        7
    xuegy  
    OP
       2021-01-25 12:00:52 +08:00
    @kokutou 我是不是没说清楚,怎么牛头不对马嘴的? mac 系统还能把桌面卸了?
    xuegy
        8
    xuegy  
    OP
       2021-01-25 12:06:37 +08:00
    @Cooky 不完全是,我知道 Ubuntu 系统会自带一个 llvmpipe,但是 CentOS 默认并不带这个。
    kokutou
        9
    kokutou  
       2021-01-25 12:45:08 +08:00
    @xuegy #7
    虚拟机装 centos7 不装桌面, 转发 x11 不就跟 docker 一样.

    docker 不就是个虚拟机...
    Cooky
        10
    Cooky  
       2021-01-25 14:19:28 +08:00
    @xuegy 你是要在 mac 开个 x11 server 然后 docker 往这个 x11 显示?那 docker 里不用 llvmpipe 吧
    xuegy
        11
    xuegy  
    OP
       2021-01-25 15:18:37 +08:00 via iPhone
    @Cooky 那个软件要显示三维模型的啊
    Cooky
        12
    Cooky  
       2021-01-25 15:22:35 +08:00 via Android
    @xuegy 也就是说 xserver 和转发你都配好了,只差 opengl 是吧,那启动那个程序的时候加个变量,
    Cooky
        13
    Cooky  
       2021-01-25 15:23:00 +08:00 via Android
    @Cooky LIBGL_ALWAYS_INDIRECT=1
    xuegy
        14
    xuegy  
    OP
       2021-01-25 17:20:32 +08:00 via iPhone
    @Cooky mac 这边接收的我弄好了,docker 里面一直没装好,glxinfo 报错
    libGL error: No matching fbConfigs or visuals found
    libGL error: failed to load driver: swrast
    我在 yum 里把带有 mesa 字样的包都装了,很明显 llvmpipe 并没有装上。
    xuegy
        15
    xuegy  
    OP
       2021-01-25 17:28:39 +08:00 via iPhone
    我是照着一个 ubuntu 教程弄的,人家一点没管显卡驱动的事情直接就能输出。我用的 centos 官方 docker 镜像,系统纯净到连 sudo 都没有,推测肯定是系统缺东西。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   4034 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 05:11 · PVG 13:11 · LAX 22:11 · JFK 01:11
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.