# Current compose files do not start PostgreSQL for you. # If PostgreSQL runs on the host, host.docker.internal works from the app container. DATABASE_URL=postgresql+psycopg://videoroll:videoroll@host.docker.internal:5432/videoroll REDIS_URL=redis://redis:6379/0 S3_ENDPOINT_URL=http://minio:9000 S3_ACCESS_KEY_ID=videoroll S3_SECRET_ACCESS_KEY=videorollsecret S3_BUCKET=videoroll S3_REGION_NAME=us-east-1 S3_USE_SSL=false SUBTITLE_SERVICE_URL=http://localhost:8000/subtitle-service YOUTUBE_INGEST_URL=http://localhost:8000/youtube-ingest BILIBILI_PUBLISHER_URL=http://localhost:8000/bilibili-publisher SUBTITLE_ASR_ENGINE=faster-whisper SUBTITLE_WHISPER_MODEL=tiny SUBTITLE_WHISPER_DEVICE=cpu SUBTITLE_WHISPER_COMPUTE_TYPE=int8 SUBTITLE_WHISPER_MODEL_DIR=/models/whisper FFMPEG_PATH=ffmpeg WORK_DIR=/tmp/videoroll YOUTUBE_USER_AGENT="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36" # Optional: YouTube downloader (yt-dlp) # - Put a Netscape cookies.txt at ./data/secrets/youtube_cookies.txt (mounted to /secrets) # - Then set: # YOUTUBE_COOKIE_FILE=/secrets/youtube_cookies.txt # Optional proxy for yt-dlp (http/socks5): # YOUTUBE_PROXY=http://host.docker.internal:7890 # Advanced: yt-dlp extractor args # YOUTUBE_EXTRACTOR_ARGS_JSON={"youtube":{"player_client":["tv","android_sdkless","web"]}} BILIBILI_PUBLISH_MODE=mock # Bilibili uploads are rate-limited; keep publish worker single-threaded by default. CELERY_PUB_CONCURRENCY=1 # Build with real ASR (faster-whisper) INSTALL_ASR=1 # Optional: refresh yt-dlp at image build time. # - latest: install newest release available when this layer is rebuilt # - or pin a specific version, e.g. 2026.03.03 YTDLP_VERSION=latest # Optional: allow browser origins (comma-separated) CORS_ALLOW_ORIGINS=http://localhost:3000,http://127.0.0.1:3000 # Optional publish bindings # PUBLISH_ADDR=127.0.0.1 # WEB_PORT=3000 # MINIO_CONSOLE_PORT=9001