60 lines
2.5 KiB
Plaintext
60 lines
2.5 KiB
Plaintext
# libnovel scraper — environment overrides
|
|
# Copy to .env and adjust values; do NOT commit this file with real secrets.
|
|
|
|
# Browserless API token (leave empty to disable auth)
|
|
BROWSERLESS_TOKEN=
|
|
|
|
# Number of concurrent browser sessions in Browserless
|
|
BROWSERLESS_CONCURRENT=10
|
|
|
|
# Queue depth before Browserless returns 429
|
|
BROWSERLESS_QUEUED=100
|
|
|
|
# Per-session timeout in ms
|
|
BROWSERLESS_TIMEOUT=60000
|
|
|
|
# Optional webhook URL for Browserless error alerts (leave empty to disable)
|
|
ERROR_ALERT_URL=
|
|
|
|
# Which Browserless strategy the scraper uses: content | scrape | cdp | direct
|
|
BROWSERLESS_STRATEGY=direct
|
|
|
|
# Strategy for URL retrieval (chapter list). Uses browserless content strategy by default.
|
|
# Set to direct to use plain HTTP, or content/scrape/cdp for browserless.
|
|
BROWSERLESS_URL_STRATEGY=content
|
|
|
|
# Chapter worker goroutines (0 = NumCPU inside the container)
|
|
SCRAPER_WORKERS=0
|
|
|
|
# Host path to mount as the static output directory
|
|
STATIC_ROOT=./static/books
|
|
|
|
# ── Kokoro-FastAPI TTS ────────────────────────────────────────────────────────
|
|
# Base URL for the Kokoro-FastAPI service. When running via docker-compose the
|
|
# default (http://kokoro:8880) is wired in automatically; override here only if
|
|
# you are pointing at an external or GPU instance.
|
|
KOKORO_URL=http://kokoro:8880
|
|
|
|
# Default voice used for chapter narration.
|
|
# Single voices: af_bella, af_sky, af_heart, am_adam, …
|
|
# Mixed voices: af_bella+af_sky or af_bella(2)+af_sky(1) (weighted blend)
|
|
KOKORO_VOICE=af_bella
|
|
|
|
# ── MinIO / S3 object storage ─────────────────────────────────────────────────
|
|
MINIO_ROOT_USER=admin
|
|
MINIO_ROOT_PASSWORD=changeme123
|
|
MINIO_BUCKET_CHAPTERS=libnovel-chapters
|
|
MINIO_BUCKET_AUDIO=libnovel-audio
|
|
|
|
# PocketBase admin credentials (used by scraper + UI server-side)
|
|
POCKETBASE_ADMIN_EMAIL=admin@libnovel.local
|
|
POCKETBASE_ADMIN_PASSWORD=changeme123
|
|
|
|
# ── SvelteKit UI ─────────────────────────────────────────────────────────────
|
|
# Port the UI container exposes on the host
|
|
UI_PORT=3000
|
|
|
|
# Public MinIO URL reachable from the browser (for audio/presigned URLs)
|
|
# In production, point this at your MinIO reverse-proxy or CDN domain.
|
|
PUBLIC_MINIO_PUBLIC_URL=http://localhost:9000
|