繁体   English   中英

如何将 Puppeteer 部署到 Heroku?

[英]How do I deploy Puppeteer onto Heroku?

无论出于何种原因,我都无法将 puppeteer 正确部署到 heroku。 它构建,但是当我运行它时,我得到应用程序错误页面。 当我检查日志时,我得到:

2020-09-09T22:44:38.942371+00:00 app[web.1]: (node:4) UnhandledPromiseRejectionWarning: Error: Failed to launch the browser process!
2020-09-09T22:44:38.942389+00:00 app[web.1]: [0909/224438.137880:FATAL:zygote_host_impl_linux.cc(117)] No usable sandbox! Update your kernel or see https://chromium.googlesource.com/chromium/src/+/master/docs/linux/suid_sandbox_development.md for more information on developing with the SUID sandbox. If you want to live dangerously and need an immediate workaround, you can try using --no-sandbox.

这告诉我 1) 浏览器因任何原因无法启动,以及 2) 没有沙箱。

我使用的基本代码是这样的:

const browser = await puppeteer.launch(
{
    headless: false,
    args: ["no-sandbox", "--disable-setuid-sandbox"],
});

如您所见,我已经尝试了在 SO 上看到的无沙盒选项。 我试过将 headless 设置为 true 和 false,没有区别。

这是我在 Heroku 上的 webpack。

https://github.com/jontewks/puppeteer-heroku-buildpack
https://github.com/heroku/heroku-buildpack-google-chrome
heroku/nodejs

我需要更多吗? 我需要一个专门用于 Chromium 的吗?

好的,首先我有一个错字。 它是--no-sandbox

其次,我必须在 Heroku 上下载一个名为 heroku-buildpack-chrome-headless 的新 webpack。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM