Skip to content

Browserless

Browserless provides headless Chrome instances for the browser automation tools. It runs as a separate container in your Docker Compose setup.

Browserless is included in the default Docker Compose configuration:

browserless:
image: ghcr.io/browserless/chromium
ports:
- "3333:3333"
environment:
MAX_CONCURRENT_SESSIONS: 10
TIMEOUT: 1800000

Connect it to the engine with:

FRONA_BROWSER_WS_URL=ws://browserless:3333
VariableDefaultDescription
MAX_CONCURRENT_SESSIONS10Maximum simultaneous browser sessions
TIMEOUT1800000Session timeout in milliseconds (30 min)

Each browser session uses roughly 200-500 MB of RAM, depending on the complexity of the pages being loaded. Plan your MAX_CONCURRENT_SESSIONS accordingly:

  • A server with 8 GB RAM can comfortably run 5-10 sessions
  • For heavy browser automation workloads, allocate more RAM

Browserless should not be exposed to the public internet. Keep it on an internal network accessible only to the Frona engine. The Docker Compose default configuration only exposes the port to the host for debugging purposes.

In production, remove the port mapping:

browserless:
image: ghcr.io/browserless/chromium
# No ports: section. Only accessible to other containers
environment:
MAX_CONCURRENT_SESSIONS: 10
TIMEOUT: 1800000

For a complete setup walkthrough, see the Browserless Integration Guide.