Files
trawl/.env.example
T

52 lines
2.2 KiB
Bash

REDIS_URL=redis://localhost:6379
BROWSER_POOL_SIZE=5
SESSION_TTL_SECONDS=3600
PROXY_URL=
RESIDENTIAL_PROXY_URL=
PORT=8191
PORT_WEB=3000
PORT_DOCS=3001
# --- MITM forward-proxy mode (optional, off by default) ---
#
# Browser-backed HTTP(S) forward proxy. Point a client's proxy setting at it and every
# request it makes is transparently re-issued through the browser pool — for clients that
# only consume cookies+UA from /v1 and then re-fetch themselves, which fails on sites
# whose Cloudflare clearance is bound to the browser's connection fingerprint.
#
# It terminates TLS with its own CA (persisted in MITM_PROXY_CA_DIR). Install that CA
# (GET /proxy-ca.crt, or the ca.crt file) into the client's trust store, then set the
# client's proxy to http://<trawl-host>:<MITM_PROXY_PORT>. Only expose it to trusted
# clients on a private interface — it can impersonate any host to a client that trusts it.
MITM_PROXY_ENABLED=false
MITM_PROXY_PORT=8192
# Default 0.0.0.0 (binding all interfaces) — needed for docker-compose where clients
# reach trawl through the bridge network. Set to 127.0.0.1 for loopback-only
# deployment.
MITM_PROXY_HOST=0.0.0.0
MITM_PROXY_CA_DIR=/data/proxy-ca
# Cap the escalation tier the proxy uses (e.g. 3 to keep it off residential Tier 4). Blank = up to 4.
MITM_PROXY_MAX_TIER=
# Log one line per proxied request (noisy). Errors are always logged.
MITM_PROXY_DEBUG=false
# --- reCAPTCHA v2 audio solving (optional) ---
#
# By default TRAWL uses Google's own free Speech API to transcribe reCAPTCHA
# audio challenges — no key or signup needed. If you want to use a local
# Whisper server instead (fully air-gapped), set STT_URL:
#
# whisper.cpp server: STT_URL=http://localhost:8080/inference
# faster-whisper-server: STT_URL=http://localhost:8000/v1/audio/transcriptions
STT_URL=
STT_API_KEY=
# Chrome executable path (overrides default /usr/bin/google-chrome inside Docker)
CHROME_EXECUTABLE=
# Optional: full path to the ffmpeg binary for reCAPTCHA audio transcoding.
# Docker installs ffmpeg via apt so this isn't needed in production.
# On macOS with Playwright's bundled binary (ffmpeg-mac), either set this or create a symlink:
# ln -sf ~/.cache/ms-playwright/ffmpeg-*/ffmpeg-mac ~/.local/bin/ffmpeg
FFMPEG_PATH=