Files
vidconf/.env.example

106 lines
5.0 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# --- Database ---
POSTGRES_USER=vidconf
POSTGRES_PASSWORD=vidconf
POSTGRES_DB=vidconf
DATABASE_URL=postgresql+asyncpg://vidconf:vidconf@localhost:5432/vidconf
# --- Redis ---
REDIS_URL=redis://localhost:6379/0
# --- Seed admin user ---
SEED_ADMIN_EMAIL=admin@vidconf.example
SEED_ADMIN_PASSWORD=change-me
# --- Plugins ---
PLUGINS_CONFIG_PATH=config/plugins.yaml
# --- Auth (JWT + email-подтверждение) ---
JWT_SECRET=change-me-generate-a-long-random-secret
ACCESS_TOKEN_TTL_MINUTES=15
REFRESH_TOKEN_TTL_DAYS=14
EMAIL_VERIFICATION_TTL_HOURS=24
FRONTEND_URL=http://localhost:5173
# false только для dev по http://localhost (Safari не сохраняет
# Secure-cookie без HTTPS); в проде обязательно true.
AUTH_COOKIE_SECURE=false
# --- LiveKit (dev placeholders, replace in real .env) ---
LIVEKIT_API_KEY=devkey
LIVEKIT_API_SECRET=change-me-livekit-secret
LIVEKIT_URL=ws://localhost:7880
# URL, который получает браузер клиента для подключения к LiveKit SFU.
LIVEKIT_PUBLIC_URL=ws://localhost:7880
# --- Coturn (dev placeholders) ---
TURN_REALM=vidconf.local
TURN_STATIC_AUTH_SECRET=change-me-turn-secret
# --- Транскрибация (профиль compose `transcribe`: egress + worker-transcriber) ---
# Общий путь тома `recordings` (egress пишет .ogg-треки, worker-transcriber
# читает их для faster-whisper). Внутри docker-сети менять не нужно —
# значение по умолчанию (см. deploy/docker-compose.yml) уже совпадает
# с точкой монтирования тома в обоих сервисах.
RECORDINGS_DIR=/recordings
# --- Email (рассылка саммари + .ics-приглашения) ---
# `console` — дефолт для dev (письмо только логируется, ссылка подтверждения
# email берётся из логов); `smtp` — реальная отправка через aiosmtplib.
# Переключатель — только .env (секреты SMTP никогда не попадают в БД/админку).
EMAIL_BACKEND=console
SMTP_HOST=localhost
SMTP_PORT=587
SMTP_USERNAME=
SMTP_PASSWORD=
SMTP_START_TLS=true
SMTP_USE_TLS=false
SMTP_FROM=VidConf <no-reply@vidconf.example>
SMTP_TIMEOUT_S=30
# --- Версия инстанса (релиз v0.0.1) ---
# install.sh копирует значение из корневого файла VERSION при каждой
# установке/обновлении — руками менять не нужно.
VIDCONF_VERSION=0.0.1
# --- Профили compose — install.sh выставляет по выбранному
# пресету инсталлятора (1/2 — media; 3 — +transcribe,llm; 4 — те же,
# WHISPER_MODEL/LLM_MODEL_* другого уровня; 5 — +transcribe-gpu,llm-gpu). ---
COMPOSE_PROFILES=media
# --- Настройки модулей инстанса под пресет ---
# install.sh пишет их по выбранному пресету, backend
# читает их при первом бутстрапе instance_settings (lifespan) вместо
# дефолтного «всё enabled: true» из config/plugins.yaml; те же значения
# использует scripts.apply_preset_settings при повторном применении. Пусто —
# бутстрап берёт дефолты plugins.yaml (как раньше, для dev без install.sh). ---
BOOTSTRAP_CHAT_ENABLED=
BOOTSTRAP_TRANSCRIPTION_ENABLED=
BOOTSTRAP_AI_LEVEL=
# --- Обнаруженное железо (install.sh, ADR-004) — читает
# backend/services/ai_levels.py для детекта доступности уровней AI в
# админке; НЕ влияет на то, что реально поднимает docker compose
# (это делает COMPOSE_PROFILES выше) — используется только для
# рекомендации/причин недоступности.
HW_CPUS=
HW_RAM_MB=
HW_GPU_NAME=
HW_VRAM_MB=
# --- Транскрибация: модель faster-whisper уровня AI (профили `transcribe`/
# `transcribe-gpu`) — small (min) / medium (medium) / large-v3 (max, только
# GPU), см. ADR-004. Пишет install.sh по выбранному пресету. ---
WHISPER_MODEL=small
# --- Суммаризация: модель Qwen3.5 уровня AI (профили `llm`/`llm-gpu`) —
# см. ADR-004 и deploy/llm/download-model.sh. Пишет install.sh по выбранному
# пресету; значения ниже — дефолт уровня `min`. ---
LLM_MODEL_FILE=qwen3.5-4b-instruct-q4_k_m.gguf
LLM_MODEL_URL=https://huggingface.co/unsloth/Qwen3.5-4B-GGUF/resolve/main/Qwen3.5-4B-Q4_K_M.gguf
LLM_MODEL_MIN_SIZE=2000000000
LLM_TOKENIZER_FILE=qwen3.5-4b-instruct.tokenizer.json
LLM_TOKENIZER_URL=https://huggingface.co/Qwen/Qwen3.5-4B/resolve/main/tokenizer.json
# --- Мониторинг (профиль compose `monitoring`) ---
GRAFANA_ADMIN_USER=admin
GRAFANA_ADMIN_PASSWORD=change-me-grafana