-
Notifications
You must be signed in to change notification settings - Fork 961
Description
Describe the bug
When running the ghcr.io/browserless/chromium (v2) Docker image on a Raspberry Pi 5, any request to an API endpoint (e.g., /content) results in a timeout after approximately 30 seconds. The process appears to stall during the "Launching ChromiumCDP Handler" phase and never completes the request.
This issue is specific to the v2 image on this hardware. The older browserless/chrome (v1) image runs without any issues on the same device with the same configuration.
To Reproduce
Steps to reproduce the behavior:
On a Raspberry Pi 5 running Raspberry Pi OS (64-bit), create a docker-compose.yml file with the following content:
version: '3'
services:
browser:
image: ghcr.io/browserless/chromium # This is the v2 image that fails
restart: always
environment:
- "TOKEN=example"
- "HOST=0.0.0.0"
- "TIMEOUT=60000"
ports:
- "3000:3000"
Run docker-compose up -d to start the container.
Execute a curl request to the /content endpoint to fetch a simple page:
curl -X POST \
-H "Content-Type: application/json" \
-d '{"url": "https://www.example.com"}' \
"http://localhost:3000/content?token=example"
Observe that the request hangs and eventually times out. The container logs show the process is blocked after launching the handler.
Log Output:
Launching ChromiumCDP Handler
browserless.io:limiter:info (Running: 1, Pending: 0) Starting new job +0ms
browserless.io:ChromiumScrapePostRoute:info 172.19.0.2 Starting new ChromiumCDP instance +0ms
browserless.io:ChromiumScrapePostRoute:info 172.19.0.2 ChromiumCDP got open port 43445 +1ms
browserless.io:ChromiumScrapePostRoute:info 172.19.0.2 {
args: [
'--remote-debugging-port=43445',
'--no-sandbox',
'--user-data-dir=/tmp/browserless-data-dirs/browserless-data-dir-11589b6c-1695-40d9-b383-39f4c27cdf64',
'--load-extension=/usr/src/app/extensions/ublocklite',
'--disable-extensions-except=/usr/src/app/extensions/ublocklite'
],
executablePath: '/usr/local/bin/playwright-browsers/chromium-1187/chrome-linux/chrome'
} Launching ChromiumCDP Handler +0ms
Expected behavior
The /content API should successfully load example.com and return its HTML content, just as it does with the browserless/chrome v1 image. The request should not time out.
Screenshots
N/A
Desktop (please complete the following information):
OS: Raspberry Pi OS (64-bit)
Device: Raspberry Pi 5 (booting from SSD)
Smartphone (please complete the following information):
N/A
Additional context
The key issue appears to be an incompatibility with the v2 image (ghcr.io/browserless/chromium) and the Raspberry Pi 5 (ARM64) architecture, as the v1 image (browserless/chrome) works perfectly. Setting a longer TIMEOUT environment variable does not resolve the issue; the process still hangs at the same step.