

Read more about using puppeteer on App Engine by following the official tutorial. Once you have a solid understanding of Puppeteer’s API and how it fits together in the Node. This part will walk you through the steps you'll need to follow to use Puppeteer in your tests: Download and install Node. To use puppeteer, simply list the module as a dependency in your package.json and deploy to Google App Engine. There are many ways you can download files with Puppeteer. To use Puppeteer with Node.js, you'll need to install several packages and set up a few environment variables. You should find Puppeteer executes successfully, provided proper Chrome flags are used. The Node.js runtime of the App Engine standard environment comes with all system packages needed to run Headless Chrome.

Chrome will write into /tmp instead.Īdd your JavaScript to your container with a COPY instruction. disable-dev-shm-usage – This flag is necessary to avoid running into issues with Docker’s default low shared memory space of 64MB.If you’re uncomfortable with this, you’ll need to manually configure working Chrome sandboxing, which is a more involved process. It’s vital you ensure your Docker containers are strongly isolated from your host. Using these flags could allow malicious web content to escape the browser process and compromise the host. no-sandbox and disable-setuid-sandbox – These disable Chrome’s sandboxing, a step which is required when running as the root user (the default in a Docker container).Setting this flag explicitly instructs Chrome not to try and use GPU-based rendering. disable-gpu – The GPU isn’t usually available inside a Docker container, unless you’ve specially configured the host.
