标签: osmesa

如何在 selenium-docker 项目中的 Headless Chrome >= 96 中启用 WebGL,以便在没有 XVFB 的情况下在 docker 容器内运行 Chrome

我正在使用 selenium-docker 项目在 docker 容器内运行 chrome,无需XVFB( START_XVFB=false)。

我想使用 webgl 支持。对于 chrome v95 及更低版本 ( https://github.com/SeleniumHQ/docker-selenium/releases/tag/4.1.0-prerelease-20211105 ),启用了 webgl (使用https://get.webgl.org/检查) 。

但是,当使用 chrome v96 或更高版本时,它不起作用(https://github.com/SeleniumHQ/docker-selenium/releases/tag/4.1.2-20220131)。我可以看到gpu 进程--use-gl=disabled参数,这在 chrome v95 中不会发生。

seluser@6e0bab2896f2:/$ ps aux|grep chrome
seluser      136  0.0  0.0 16875056 16500 ?      Sl   22:36   0:00 /opt/selenium/chromedriver-97.0.4692.71 --port=48167
seluser      153  0.7  0.0 17181620 99736 ?      Sl   22:36   0:00 /opt/google/chrome/chrome --no-sandbox --allow-pre-commit-input --disable-background-networking --disable-client-side-phishing-detection --disable-default-apps --disable-hang-monitor --disable-popup-blocking --disable-prompt-on-repost --disable-sync --enable-automation --enable-blink-features=ShadowDOMV0 --enable-logging --headless --log-level=0 --no-first-run …
Run Code Online (Sandbox Code Playgroud)

selenium webgl docker google-chrome-headless osmesa

11
推荐指数
1
解决办法
1万
查看次数

如何正确编译 ParaView 以进行无头离屏渲染?

我在远程服务器上运行 OpenFOAM 并且基本上设法通过 paraview 来可视化结果,如此处pvserver 所述。但是,在连接时,客户端会产生

服务器显示无法访问!

在服务器端无法访问显示。远程渲染将被禁用。

这基本上是正确的,因为服务器没有运行 X 服务器。性能当然是次优的,因为没有远程渲染,整个几何体都会被传输(我猜这几乎和直接 ssh 复制文件以纯粹在本地运行一样糟糕)。该服务器确实有一个简单的板载 GPU(c2:00.0 VGA 兼容控制器:ASPEED Technology, Inc. ASPEED Graphics Family (rev 41) as per lspci),使用它可能被称为计划 B,因为在某些时候我可能会切换到没有GPU 或一个完全不同的。所以不是,我看了一眼https://kitware.github.io/paraview-docs/latest/cxx/Offscreen.html,并使用Arch Linux的我获得了paraview包PKGBUILD通过asp checkout paraview,并附加了以下开关的build() -> cmake指令:

        -DVTK_OPENGL_HAS_OSMESA=ON \
        -DVTK_USE_X=OFF \
        -DPARAVIEW_USE_QT=OFF \
Run Code Online (Sandbox Code Playgroud)

编译没有错误(尽管有很多警告,我可能需要检查它们在使用和不使用这些开关的情况下是否不同),但是pvserver现在 SEGFAULTs:

$LD_PRELOAD=/usrlib/libGLEW.so pvserver --force-offscreen-rendering
Waiting for client...
Connection URL: cs://xxx:11111
Accepting connection(s): xxx:11111
Client connected.
(  52.668s) [pvserver        ]vtkOpenGLRenderWindow.c:565    ERR| vtkOSOpenGLRenderWindow (0x55f0fa7f4b60): …
Run Code Online (Sandbox Code Playgroud)

headless off-screen mesa paraview osmesa

3
推荐指数
1
解决办法
133
查看次数