Open-source engine

Own the renderer.
Own the operations.

Prerender Buddy Engine is an Apache-2.0 Docker service for teams that want crawler rendering inside infrastructure they operate.

Quick start

A small, auditable core.

Version 0.1 runs one Chromium process with bounded concurrency, in-memory caching, duplicate-render coordination, URL controls, and no external telemetry.

Docker Composelocalhost:3000
git clone https://github.com/kopachlager/prerenderbuddy-engine.git
cd prerenderbuddy-engine
cp .env.example .env
# Set a 32+ character token and exact allowed domains in .env
docker compose up --build -d
curl http://127.0.0.1:3000/ready

Configuration

Secure defaults first.

PRERENDER_TOKEN

Required server-side secret with at least 32 characters.

ALLOWED_DOMAINS

Required exact hostnames by default; list apex and www separately.

RENDER_MAX_CONCURRENCY

Bound parallel browser work to the capacity you have measured.

RENDER_TIMEOUT_MS

Bound page execution instead of allowing long-lived renders.

CACHE_*

Size the process-local cache by entries, bytes, and TTL.

ALLOWED_ORIGINS

Leave empty unless browser CORS access is deliberately required.

Production readiness

The container is one part of the service.

  1. 01Keep the engine private behind TLS or a trusted server-side integration.
  2. 02Use exact ALLOWED_DOMAINS values and block access to private networks at the infrastructure layer.
  3. 03Start with 2 vCPU, 2 GB RAM, and render concurrency between 2 and 4; measure representative pages.
  4. 04Monitor health, readiness, capacity, memory, latency, failures, and restarts before sending crawler traffic.
  5. 05Pin a release tag, test updates in staging, and keep a documented rollback path.

Support boundary

Self-hosted core or managed outcome.

The open engine is community-supported software. The managed product includes operated services that are not part of the repository.

Capability or responsibilityOpen engineManaged service
Rendering engine and Docker image
Crawler routing and production integration
TLS, network isolation, firewall, and secrets
Monitoring, alerting, scaling, and incidents
Managed DNS, dashboard, billing, and support

For the open engine, your team owns deployment, crawler routing, uptime, scaling, monitoring, backups, upgrades, security response, and incident handling. No service-level guarantee is included.

Upgrade

Back up configuration, review release notes, pin the new release tag, rebuild with fresh base images, verify readiness, and test representative URLs before cutover.

Troubleshoot

Use container logs for startup failures, /ready for Chromium state, HTTP status codes for token, domain, and capacity errors, and metrics for memory and concurrency pressure.

Harden

Keep the token server-side, isolate outbound networking, deny metadata and private ranges, rate-limit the proxy, and separate unrelated tenants with different containers and tokens.

Choose the ownership model

Use the engine when infrastructure ownership is the point.