apify / apify-actor-docker

Base Docker images for Apify actors.
https://hub.docker.com/u/apify
Apache License 2.0
70 stars 23 forks source link

Failed to Launch Browser apify/actor-node-puppeteer-chrome #103

Open PeterPilley opened 1 year ago

PeterPilley commented 1 year ago

Using actor-node-puppeteer-chrome in Docker on a remote server.

When attempting to use await page.screenshot I get failed to launch browser process.

Googling around I can see it could be due to missing dependencies with the docker image.

I have tried changing versions of the docker image from 16 to 18 with no change

PeterPilley commented 1 year ago

Discovered this error in the process ERROR PuppeteerCrawler: Request failed and reached maximum retries. Error: Failed to launch the browser process! ap-auditor-workers | 2023-05-22T02:49:11.818867697Z [0522/024911.526188:FATAL:zygote_host_impl_linux.cc(127)] No usable sandbox! Update your kernel or see https://chromium.googlesource.com/chromium/src/+/main/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.

it is trying to setup an instance Starting X virtual framebuffer using: Xvfb :99 -ac -screen 0 1920x1080x24+32 -nolisten tcp

PeterPilley commented 1 year ago

Ok resolved this by following the instructions here https://github.com/puppeteer/puppeteer/issues/3451

The fix was to take the apify docker file add this USER root RUN echo 'kernel.unprivileged_userns_clone=1' > /etc/sysctl.d/userns.conf USER myuser # to return to the original user

then add in docker-compose.yml

cap:

B4nan commented 1 year ago

@vladfrangu please take a look at this

fcpauldiaz commented 7 months ago

this issue still happens today with docker