Amazon web services AWS EC2 Ubuntu上的木偶演员,谷歌浏览器稳定

Amazon web services AWS EC2 Ubuntu上的木偶演员,谷歌浏览器稳定,amazon-web-services,amazon-ec2,puppeteer,Amazon Web Services,Amazon Ec2,Puppeteer,我正试着在AWS上运行Puppeter来处理一些视频。这不是最明显的工作流,但我需要使用为web编写的库,而不是Node.js 我已经解决了,现在我只剩下一个完全模糊的错误,不知道还有什么需要修复 环境: EC2 Instance: t2.medium Ubuntu 16.04 Original AMI: http://aws.amazon.com/marketplace/pp/B00NNZUAKO Node: v8.1.2 puppeteer: 1.5.0 google-chrome-stab

我正试着在AWS上运行Puppeter来处理一些视频。这不是最明显的工作流,但我需要使用为web编写的库,而不是Node.js

我已经解决了,现在我只剩下一个完全模糊的错误,不知道还有什么需要修复

环境:

EC2 Instance: t2.medium Ubuntu 16.04
Original AMI: http://aws.amazon.com/marketplace/pp/B00NNZUAKO
Node: v8.1.2
puppeteer: 1.5.0
google-chrome-stable: 71.0.3578.98-1
在my node.js应用程序中:

const browser = await puppeteer.launch({
  executablePath: '/usr/bin/google-chrome-stable',
  args: ['--no-sandbox', '--disable-setuid-sandbox'],
  headless: false,
});                  // ERROR IS THROWN BY puppeteer.launch()
const page = await browser.newPage();
page.on('console', handleLogging(browser, exits, inputs.id));
await page.goto('http://ec2-my-instance.compute-1.amazonaws.com/analyzer');
错误:

{ Error: Failed to launch chrome!


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

    at onClose (/home/bitnami/my-project/node_modules/puppeteer/lib/Launcher.js:285:14)
    at ChildProcess.helper.addEventListener (/home/bitnami/my-project/node_modules/puppeteer/lib/Launcher.js:275:60)
    at emitTwo (events.js:125:13)
    at ChildProcess.emit (events.js:213:7)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:197:12)
  cause: 
   Error: Failed to launch chrome!


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

       at onClose (/home/bitnami/my-project/node_modules/puppeteer/lib/Launcher.js:285:14)
       at ChildProcess.helper.addEventListener (/home/bitnami/my-project/node_modules/puppeteer/lib/Launcher.js:275:60)
       at emitTwo (events.js:125:13)
       at ChildProcess.emit (events.js:213:7)
       at Process.ChildProcess._handle.onexit (internal/child_process.js:197:12),
  isOperational: true }

假设chrome确实存在,则可执行路径看起来正常

通过向args添加--single process,我可以在类似的EC2实例上运行您的代码。请尝试以下参数:

args: ['--no-sandbox', '--disable-setuid-sandbox', '--single-process'],
老实说,我不完全确定EC2为什么需要它

如果没有将任何显示设置为EC2实例,还需要更改为headless:true,否则会出现类似错误,因为chrome需要显示


**如果可以的话,我会把它放在评论中,而不是答案中,因为它不完整,但遗憾的是我没有足够的分数。

假设chrome确实存在,可执行路径看起来还可以

通过向args添加--single process,我可以在类似的EC2实例上运行您的代码。请尝试以下参数:

args: ['--no-sandbox', '--disable-setuid-sandbox', '--single-process'],
老实说,我不完全确定EC2为什么需要它

如果没有将任何显示设置为EC2实例,还需要更改为headless:true,否则会出现类似错误,因为chrome需要显示


**如果可以的话,我会把它放在评论中而不是答案中,因为它不完整,但遗憾的是我没有足够的分数。

我是否正确设置了
executablePath
?我是*nix的新手。我是否正确设置了
executablePath
?我是*尼克斯的新手。谢谢你的提示。等我回到办公桌前,我会试试这个。谢谢你的提示。等我回到办公桌前,我会试试这个。