无法使用Puppeteer-错误:无法启动Chrome

时间:2019-11-30 03:34:33

标签: node.js gitlab-ci puppeteer

这是我得到的错误。在Gitlab CI中运行测试代码时,会发生这种情况。

但是,它在本地运行良好。有人帮忙吗?

2036 $ npm test
  

2037> 10_auth@1.1.3测试/ builds / brhanuh / domestic-repair

     

2038>开玩笑--coverage'unitTests /'

     

2039错误:无法启动Chrome!

     

2040   /builds/brhanuh/domestic-repair/node_modules/puppeteer/.local-chromium/linux-686378/chrome-linux/chrome:   加载共享库时出错:libX11-xcb.so.1:无法打开   共享对象文件:没有这样的文件或目录

3 个答案:

答案 0 :(得分:6)

我只是想补充@mohammad的答案,现在Puppetteer现在拥有an official troublshooting guide,可以帮助您确定要安装的东西。

此外,他们建议运行以下命令来判断哪个particular packages need installing on *nix systems

ldd chrome | grep not

或者,如果您像我一样通过NPM通过Puppetteer安装了Chrome:

ldd ./node_modules/puppeteer/.local-chromium/linux-756035/chrome-linux/chrome | grep not

然后,我能够看到仍然缺少哪些库,并进行相应的安装。

答案 1 :(得分:1)

使用安装缺少的软件包

sudo apt install -y gconf-service libasound2 libatk1.0-0 libc6 libcairo2 libcups2 libdbus-1-3 libexpat1 libfontconfig1 libgcc1 libgconf-2-4 libgdk-pixbuf2.0-0 libglib2.0-0 libgtk-3-0 libnspr4 libpango-1.0-0 libpangocairo-1.0-0 libstdc++6 libx11-6 libx11-xcb1 libxcb1 libxcomposite1 libxcursor1 libxdamage1 libxext6 libxfixes3 libxi6 libxrandr2 libxrender1 libxss1 libxtst6 ca-certificates fonts-liberation libappindicator1 libnss3 lsb-release xdg-utils wget

the puppetteer issue tracker上@coldner贷方组装所需的pkg。

如果遇到E: Unable to locate package错误,请运行sudo apt-get update

答案 2 :(得分:0)

您需要安装必需的依赖项

此处

https://github.com/puppeteer/puppeteer/blob/master/docs/troubleshooting.md

Chrome headless doesn't launch on UNIX下,您可以找到

Debian (e.g. Ubuntu) Dependencies
CentOS Dependencies