| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 |
- # Environment variables — secrets and endpoint URLs only.
- # Copy this file to .env and fill in values.
- # Model, voice, and other business settings go in config/default.yaml or CLI flags.
- #
- # In Docker, docker-compose.yml reads this file and substitutes the values below
- # into the container's environment — you do NOT need a .env inside the image.
- # --- LLM ---
- OPENAI_API_KEY=
- OPENAI_BASE_URL=
- # --- TTS: OpenAI-compatible (default provider) ---
- OPENAI_TTS_API_KEY=
- OPENAI_TTS_BASE_URL=
- # OPENAI_TTS_MODEL=seed-tts-1.1
- # TTS retry count on transient failures (network error / 429 / 5xx). Default 3; 0 disables.
- # TTS_MAX_RETRIES=3
- # --- TTS: Fish Audio ---
- FISH_AUDIO_API_KEY=
- # --- TTS: MiniMax ---
- MINIMAX_API_KEY=
- MINIMAX_GROUP_ID=
- # --- TTS: ElevenLabs ---
- ELEVENLABS_API_KEY=
- # --- Output ---
- # Unified output directory for CLI / HTTP / WebUI.
- # Leave empty to use config/default.yaml `output.dir` (default ./output, i.e. repo root /output).
- # In Docker this is forced to /app/output by docker-compose.
- # OUTPUT_DIR=/app/output
- # Auto-clean cached outputs older than N days (0 disables). Default 30.
- # OUTPUT_RETENTION_DAYS=30
- # Where the WebUI stores job metadata (jobs.json). Defaults to the OS temp dir
- # (/tmp/pipeline-jobs). In Kubernetes point this at a PVC-backed path (e.g.
- # /app/jobs) so job history survives pod restarts; otherwise it lives on
- # ephemeral container storage and is lost on restart.
- # PIPELINE_JOBS_DIR=/app/jobs
- # Timezone for the github-trending cover date (首屏 + 开场口播) and the output
- # date subfolder, so the two never disagree and never roll over a day early in
- # a UTC container. Default Asia/Shanghai. Docker also sets TZ to this value.
- # TIMEZONE=Asia/Shanghai
- # --- Publish: Alibaba Cloud OSS ---
- # When region/bucket + keys are all present, rendered videos are uploaded and a
- # resource URL is returned. Leave blank to disable OSS upload.
- OSS_REGION=oss-cn-hangzhou
- OSS_BUCKET=
- OSS_ACCESS_KEY_ID=
- OSS_ACCESS_KEY_SECRET=
- # OSS_ENDPOINT=
- # OSS_PATH=videos/
- # OSS_PUBLIC_DOMAIN=
- # OSS_SECURE=true
- # --- Publish: Feishu (Lark) custom-bot webhook ---
- # When set, results / failures are pushed after each job.
- FEISHU_WEBHOOK_URL=
- # FEISHU_WEBHOOK_SECRET=
- # @mention these members (by open_id) in every pushed message. Custom bots can
- # only @mention by open_id, and it must resolve in the bot's tenant (usually a
- # group member). Comma-separated for multiple, e.g. ou_abc,ou_def
- # FEISHU_AT_OPEN_IDS=
- # --- Logging ---
- # Log level for the pipeline / TTS / publish loggers (debug|info|warn|error).
- # Logs are written to stdout/stderr and mirrored into docker compose logs and
- # the per-job "日志" panel. Default info.
- # LOG_LEVEL=info
- # --- Scheduled renders (in-process scheduler) ---
- # Override config/default.yaml `schedules` at deploy time without rebuilding.
- # JSON array, same shape as the YAML section, e.g.:
- # SCHEDULES=[{"cron":"50 7 * * *","template":"github-trending","platform":"bilibili","source":"github-trending","publish":true}]
- # SCHEDULER_ENABLED=false # kill switch for the whole scheduler (default: on)
- # --- Container DNS ---
- # Public resolvers used by the container (the host's resolver can fail to
- # resolve some public domains, e.g. open.feishu.cn behind a VPN). Defaults to
- # AliDNS / 114DNS. Set to your internal resolver if you need private hostnames.
- # DNS_SERVER_1=223.5.5.5
- # DNS_SERVER_2=114.114.114.114
- # --- Service port (host port mapped to container 3000) ---
- PORT=13000
|