Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

Error when creating a window in Docker WLS2

オープン
#463 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
42/100
issue の種類
バグ
明瞭さ
おおむね明確
活発さ
停滞
技術スタック
docker, nodejs, typescript

調査の方向性

USAGE.md にあるウィンドウ付きの @rapidsai/demo-graph コマンドを Docker WSL2 で再現し、動作するウィンドウなしの例と比較します。modules/glfw/src/window.cpp の 62-63 行目と、報告されている jsdom の GLFW 呼び出しパスから開始します。対応している呼び出し方法を特定するか、必要な制限とセットアップを文書化できれば完了です。

索引モデルが issue の本文から書いたものです。

説明

I've been following the USAGE.md guide to set up node rapids with windows, and run into an issue with the windowed examples.

Windowed examples in docker WLS2, such as below, throw an exception in glfw.

REPO=ghcr.io/rapidsai/node
VERSIONS="22.12.2-runtime-node16.15.1-cuda11-ubuntu20.04"
docker run --rm -it --gpus all $REPO:$VERSIONS-demo npx @rapidsai/demo-graph

I've also tried variations of this based on this:

docker run --rm -it --gpus all
    -e "DISPLAY=$DISPLAY" \
    -v "/etc/fonts:/etc/fonts:ro" \
    -v "/tmp/.X11-unix:/tmp/.X11-unix:rw" \
    -v "/usr/share/fonts:/usr/share/fonts:ro" \
    -v "/usr/share/icons:/usr/share/icons:ro" \
    $REPO:$VERSIONS-demo \
    npx @rapidsai/demo-graph

I've also tried a couple different gpu flags. --gpus=0, --gpus all, and --runtime=nvidia. The gpus flags throw the same exception shown below.

Stack Trace for `--gpus`
Error creating GLFW window:
Error: api unavailable EGL: Failed to initialize EGL: EGL is not or could not be initialized
    at /opt/rapids/node/modules/glfw/src/window.cpp:62
    at createGLFWWindow (/home/node/node_modules/@rapidsai/jsdom/build/js/polyfills/glfw.js:599:39)
    at /home/node/node_modules/@rapidsai/jsdom/build/js/polyfills/glfw.js:697:23
    at /home/node/node_modules/@rapidsai/jsdom/build/js/index.js:83:42
    at Array.reduce (<anonymous>)
    at Object.beforeParse (/home/node/node_modules/@rapidsai/jsdom/build/js/index.js:83:19)
    at new JSDOM (/home/node/node_modules/jsdom/lib/api.js:40:13)
    at new RapidsJSDOM (/home/node/node_modules/@rapidsai/jsdom/build/js/index.js:59:9)
    at Function.fromReactComponent (/home/node/node_modules/@rapidsai/jsdom/build/js/index.js:40:23)
    at Module.module.exports (/home/node/node_modules/@rapidsai/demo-graph/index.js:39:18)
    at Object.<anonymous> (/home/node/node_modules/@rapidsai/demo-graph/index.js:58:10)
Uncaught Exception
Origin: uncaughtException
Exception: Error: api unavailable EGL: Failed to initialize EGL: EGL is not or could not be initialized
    at /opt/rapids/node/modules/glfw/src/window.cpp:62
    at createGLFWWindow (/home/node/node_modules/@rapidsai/jsdom/build/js/polyfills/glfw.js:599:39)
    at /home/node/node_modules/@rapidsai/jsdom/build/js/polyfills/glfw.js:697:23
    at /home/node/node_modules/@rapidsai/jsdom/build/js/index.js:83:42
    at Array.reduce (<anonymous>)
    at Object.beforeParse (/home/node/node_modules/@rapidsai/jsdom/build/js/index.js:83:19)
    at new JSDOM (/home/node/node_modules/jsdom/lib/api.js:40:13)
    at new RapidsJSDOM (/home/node/node_modules/@rapidsai/jsdom/build/js/index.js:59:9)
    at Function.fromReactComponent (/home/node/node_modules/@rapidsai/jsdom/build/js/index.js:40:23)
    at Module.module.exports (/home/node/node_modules/@rapidsai/demo-graph/index.js:39:18)
    at Object.<anonymous> (/home/node/node_modules/@rapidsai/demo-graph/index.js:58:10)

This exception points to:
https://github.com/rapidsai/node/blob/d28a85e10ac9e01e10a27468bbc866320facf241/modules/glfw/src/window.cpp#L62-L63

Is there something I should do differently when invoking docker?

Stack Trace for `--runtime=nvidia`
docker: Error response from daemon: unknown or invalid runtime name: nvidia.

Do I need to resolve this missing runtime issue?


Non-windowed node-rapids examples do work, such as this:

REPO=ghcr.io/rapidsai/node
VERSIONS="22.12.2-runtime-node16.15.1-cuda11-ubuntu20.04"
docker run --rm -it --gpus all $REPO:$VERSIONS-cudf -p "const {Seris, DataFrame} = require('@rapidsai/cudf'); new DataFrame({ a: Serienew([0,1,2]) }).toString()"
主要言語
TypeScript
スター
211
フォーク
29
平均マージ
17時間 30分
マージ済み PR(30日)
1

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

rapidsai/node のほかの issue

rapidsai/node の issue をすべて見る

似ている issue

TypeScript の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。