求一个能支持 OpenGL 的 CentOS 7 镜像,或自己制作的步骤。 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
xuegy
V2EX    Docker

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

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

    本人目前在 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     Solana     956 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 24ms UTC 22:30 PVG 06:30 LAX 14:30 JFK 17:30
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86