Итак, я пытаюсь программно провести аудит Google Lighthouse на нескольких веб-страницах, и у меня возникла проблема. После установки Chrome и node / npm / lighthouse на инстансе Amazon Linux 2 EC2 я могу успешно запускать тесты LightHouse, когда я инициирую сеанс графического интерфейса и запускаю команду с терминала в графическом интерфейсе (это запускает хром и проводит тест как обычно), но я не могу сделать то же самое из командной строки. Это ошибка, которую я получаю при запуске Lighthouse. ChromeLauncher:error [42565:42565:0516/170626.787500:ERROR:brower_main_loop.cc (1386) Unable to open X display.
Хотя есть еще несколько ошибок, я считаю, что это именно та, на которую я должен обратить внимание, потому что, когда я пытаюсь просто запустить Google Chrome, это именно та ошибка, которую я получаю, поэтому я склонен полагать, что это проблема при попытке запустить на дисплее.
Я также пробовал опцию --headless при запуске Chrome и получил [0516/171128.450564:WARNING:headless_browser_main_parts.cc(83)] Cannot create Pref Service with no user data dir. [0516/171128.521499:ERROR:vaapi_wrapper.cc(594)] Could not get a valid VA display [0516/171128.524992:ERROR:gpu_init.cc(426)] Passthrough is not supported, GL is egl
Другой пользователь с похожим вопросом решил использовать API Google Pagespeeds, что не будет для меня решением - это нужно делать локально.
Поскольку это отлично работает в сеансе графического интерфейса с тем же сервером, я действительно думаю, что это просто проблема с отображением изображения, но я не знаю, как решить эту проблему. Может имитировать дисплей? Я также пробовал ввести export DISPLAY=1:0
, что, по-видимому, сработало для некоторых пользователей и заставило меня перестать видеть ошибку, но при запуске аудита функциональность все еще была нарушена.
Любая помощь была бы такой полезной !!