mirror of
https://github.com/Monadical-SAS/reflector.git
synced 2026-03-22 07:06:47 +00:00
* self hosted with self gpu * add optional ollama model * garage ports * exposes ports and changes curl * custom domain * try to fix wroker * build locallly * documentation * docs format * precommit
113 lines
4.2 KiB
Plaintext
113 lines
4.2 KiB
Plaintext
# =======================================================
|
|
# Reflector Self-Hosted Production — Backend Configuration
|
|
# Generated by: ./scripts/setup-selfhosted.sh
|
|
# Reference: server/reflector/settings.py
|
|
# =======================================================
|
|
|
|
# =======================================================
|
|
# Database & Infrastructure
|
|
# Pre-filled for Docker internal networking (docker-compose.selfhosted.yml)
|
|
# =======================================================
|
|
DATABASE_URL=postgresql+asyncpg://reflector:reflector@postgres:5432/reflector
|
|
REDIS_HOST=redis
|
|
REDIS_PORT=6379
|
|
CELERY_BROKER_URL=redis://redis:6379/1
|
|
CELERY_RESULT_BACKEND=redis://redis:6379/1
|
|
|
|
# Secret key — auto-generated by setup script
|
|
# Generate manually with: openssl rand -hex 32
|
|
SECRET_KEY=changeme-generate-a-secure-random-string
|
|
|
|
# =======================================================
|
|
# Authentication
|
|
# Disabled by default. Enable Authentik for multi-user access.
|
|
# See docsv2/selfhosted-production.md for setup instructions.
|
|
# =======================================================
|
|
AUTH_BACKEND=none
|
|
# AUTH_BACKEND=jwt
|
|
# AUTH_JWT_AUDIENCE=
|
|
|
|
# =======================================================
|
|
# Specialized Models (Transcription, Diarization, Translation)
|
|
# These run in the gpu/cpu container — NOT an LLM.
|
|
# The "modal" backend means "HTTP API client" — it talks to
|
|
# the self-hosted container, not Modal.com cloud.
|
|
# =======================================================
|
|
TRANSCRIPT_BACKEND=modal
|
|
TRANSCRIPT_URL=http://transcription:8000
|
|
TRANSCRIPT_MODAL_API_KEY=selfhosted
|
|
|
|
DIARIZATION_ENABLED=true
|
|
DIARIZATION_BACKEND=modal
|
|
DIARIZATION_URL=http://transcription:8000
|
|
|
|
TRANSLATION_BACKEND=modal
|
|
TRANSLATE_URL=http://transcription:8000
|
|
|
|
# HuggingFace token — optional, for gated models (e.g. pyannote).
|
|
# Falls back to public S3 model bundle if not set.
|
|
# HF_TOKEN=hf_xxxxx
|
|
|
|
# =======================================================
|
|
# LLM for Summarization & Topic Detection
|
|
# Only summaries and topics use an LLM. Everything else
|
|
# (transcription, diarization, translation) uses specialized models above.
|
|
#
|
|
# Supports any OpenAI-compatible endpoint.
|
|
# Auto-configured by setup script if using --ollama-gpu or --ollama-cpu.
|
|
# For --gpu or --cpu modes, you MUST configure an external LLM.
|
|
# =======================================================
|
|
|
|
# --- Option A: External OpenAI-compatible API ---
|
|
# LLM_URL=https://api.openai.com/v1
|
|
# LLM_API_KEY=sk-your-api-key
|
|
# LLM_MODEL=gpt-4o-mini
|
|
|
|
# --- Option B: Local Ollama (auto-set by --ollama-gpu/--ollama-cpu) ---
|
|
# LLM_URL=http://ollama:11434/v1
|
|
# LLM_API_KEY=not-needed
|
|
# LLM_MODEL=llama3.1
|
|
|
|
LLM_CONTEXT_WINDOW=16000
|
|
|
|
# =======================================================
|
|
# S3 Storage (REQUIRED)
|
|
# Where to store audio files and transcripts.
|
|
#
|
|
# Option A: Use --garage flag (auto-configured by setup script)
|
|
# Option B: Any S3-compatible endpoint (AWS, MinIO, etc.)
|
|
# Set TRANSCRIPT_STORAGE_AWS_ENDPOINT_URL for non-AWS endpoints.
|
|
# =======================================================
|
|
TRANSCRIPT_STORAGE_BACKEND=aws
|
|
TRANSCRIPT_STORAGE_AWS_ACCESS_KEY_ID=
|
|
TRANSCRIPT_STORAGE_AWS_SECRET_ACCESS_KEY=
|
|
TRANSCRIPT_STORAGE_AWS_BUCKET_NAME=reflector-media
|
|
TRANSCRIPT_STORAGE_AWS_REGION=us-east-1
|
|
|
|
# For non-AWS S3-compatible endpoints (Garage, MinIO, etc.):
|
|
# TRANSCRIPT_STORAGE_AWS_ENDPOINT_URL=http://garage:3900
|
|
|
|
# =======================================================
|
|
# Daily.co Live Rooms (Optional)
|
|
# Enable real-time meeting rooms with Daily.co integration.
|
|
# Requires a Daily.co account: https://www.daily.co/
|
|
# =======================================================
|
|
# DEFAULT_VIDEO_PLATFORM=daily
|
|
# DAILY_API_KEY=your-daily-api-key
|
|
# DAILY_SUBDOMAIN=your-subdomain
|
|
# DAILY_WEBHOOK_SECRET=your-daily-webhook-secret
|
|
# DAILYCO_STORAGE_AWS_BUCKET_NAME=reflector-dailyco
|
|
# DAILYCO_STORAGE_AWS_REGION=us-east-1
|
|
# DAILYCO_STORAGE_AWS_ROLE_ARN=arn:aws:iam::role/DailyCoAccess
|
|
|
|
# =======================================================
|
|
# Feature Flags
|
|
# =======================================================
|
|
PUBLIC_MODE=true
|
|
# FEATURE_ROOMS=true
|
|
|
|
# =======================================================
|
|
# Sentry (Optional)
|
|
# =======================================================
|
|
# SENTRY_DSN=
|