Alpineでng e2eを実行する方法:現在のE /ランチャーを返します。エラー:生成5 いいえ

Alpineでng e2eを実行する方法:現在のE /ランチャーを返します。エラー:生成5 いいえ

npx ng e2e私はGitLabのdocker CI環境で実行しています。これを実行すると、完全に正常なChrome / Webドライバの設定/インストールが行われます。

[19:57:28] I/file_manager - creating folder /builds/cpanel/cpanel/demo-app/node_modules/webdriver-manager/selenium
[19:57:28] I/config_source - curl -o/builds/cpanel/cpanel/demo-app/node_modules/webdriver-manager/selenium/chrome-response.xml https://chromedriver.storage.googleapis.com/
[19:57:29] I/downloader - curl -o/builds/cpanel/cpanel/demo-app/node_modules/webdriver-manager/selenium/chromedriver_96.0.4664.45.zip https://chromedriver.storage.googleapis.com/96.0.4664.45/chromedriver_linux64.zip
[19:57:30] I/update - chromedriver: unzipping chromedriver_96.0.4664.45.zip
[19:57:31] I/update - chromedriver: setting permissions to 0755 for /builds/cpanel/cpanel/demo-app/node_modules/webdriver-manager/selenium/chromedriver_96.0.4664.45
Compiling @angular/core : es2015 as esm2015
... lots more compiling stuff..

後続の実行に失敗しました。

[19:58:07] I/launcher - Running 1 instances of WebDriver
[19:58:07] I/direct - Using ChromeDriver directly...
[19:58:07] E/launcher - spawn /builds/cpanel/cpanel/demo-app/node_modules/webdriver-manager/selenium/chromedriver_96.0.4664.45 ENOENT
[19:58:07] E/launcher - Error: spawn /builds/cpanel/cpanel/demo-app/node_modules/webdriver-manager/selenium/chromedriver_96.0.4664.45 ENOENT
    at Process.ChildProcess._handle.onexit (node:internal/child_process:282:19)
    at onErrorNT (node:internal/child_process:475:16)
    at processTicksAndRejections (node:internal/process/task_queues:83:21)
[19:58:07] E/launcher - Process exited with error code 199

なぜ私が受け取るのか、

E/Launcher - エラー: generate /builds/cpanel/cpanel/demo-app/node_modules/webdriver-manager/selenium/chromedriver_96.0.4664.45 ENOENT

そこからクロムの解凍がはっきりと見える時


./e2e/protractor.conf.js様々な形の編集を試してみました。

chromeOptions: {
  binary: process.env.CHROME_BIN,
  args: ['--no-sandbox', '--headless', '--disable-gpu']
}

しかし、新しいことは起こりません。

ベストアンサー1

ENOENT動的リンカーが欠落している典型的な症状です。例えば chrootが既存のファイルからENOENTを取得するのはなぜですか?

コンテナでglibcベースのバイナリを実行するには、muslベースのイメージ(Alpineなど)ではなくglibcベースのベースイメージを使用することをお勧めします。

あなたの要件を満たす必要がある基本的な画像がたくさんあります。実際に1つを推薦するには、その画像が正確に何であるかを知る必要があります。

おすすめ記事