Repository navigation
Expand file tree
/
Copy path.env.example
More file actions
94 lines (81 loc) · 3.94 KB
/
Copy path.env.example
File metadata and controls
94 lines (81 loc) · 3.94 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
# ==============================================================================
# StreamVault - Environment Configuration Template
# Copy this file to .env and adjust values for your environment.
# ==============================================================================
# --- Core WebUI Server Settings ---
VOD_HOST=0.0.0.0
VOD_PORT=8080
# Reverse proxies whose X-Real-IP / X-Forwarded-For headers are trusted
# (comma-separated IPs or CIDR networks). Rate limits and login bans use the
# client IP these proxies report; never list addresses clients can reach directly.
VOD_TRUSTED_PROXIES=127.0.0.1,::1
# Public base URL used for share links and OAuth callbacks.
# Leave empty to derive it from the incoming request (recommended behind a proxy).
# For OAuth providers set the exact public HTTPS origin, e.g. https://recorder.example.com
VOD_PUBLIC_BASE=
# Required. Generate with: python -c "import secrets; print(secrets.token_hex(32))"
VOD_SECRET_KEY=
VOD_SECURE_COOKIES=false
# --- Cloud / External Storage (optional) ---
# Dedicated AES-GCM key for provider credentials. Falls back to VOD_SECRET_KEY.
# Generate with: python -c "import secrets; print(secrets.token_hex(32))"
# STORAGE_ENCRYPTION_KEY=
# Background worker threads for uploads/restores (default: 1)
# WORKER_STORAGE_THREADS=1
# Auto-upload, local deletion and retention are configured in the WebUI
# (Systemsteuerung -> Cloud-Speicher) or via `streamvault storage settings`.
# --- Authentication & Initial Bootstrap ---
# NOTE: Required in production. Cannot be 'admin'/'admin'.
VOD_USER=vaultadmin
# Required. Generate with: python -c "import secrets; print(secrets.token_urlsafe(24))"
VOD_PASS=
VOD_ALLOW_ENV_LOGIN=false
VOD_SESSION_MAX_AGE_SEC=0
VOD_SESSION_COOKIE_MAX_AGE_SEC=34560000
# --- Error Monitoring (optional) ---
# SENTRY_DSN=
# PII is opt-in; keep disabled unless your privacy policy allows it.
# SENTRY_SEND_DEFAULT_PII=false
# Performance tracing is sampled and disabled by default (0.0 - 1.0).
# SENTRY_TRACES_SAMPLE_RATE=0.0
# --- Storage Paths ---
# Base directory for recordings, metadata, and database
# Default: ./data (or the app directory)
# VOD_BASE_DIR=/var/lib/streamvault/data
# VOD_FILES_DIR=/var/lib/streamvault/data/files
# VOD_HLS_DIR=/var/lib/streamvault/data/.hls
# VOD_THUMB_DIR=/var/lib/streamvault/data/.thumbs
# VOD_META_DIR=/var/lib/streamvault/data/.meta
# Low-latency Live HLS RAM-Disk (Recommended on Linux: /dev/shm/streamvault_hls)
LIVE_HLS_DIR=/dev/shm/streamvault_hls
# --- Reverse Proxy Offloading (Nginx) ---
# When true, delegates video range requests to Nginx via X-Accel-Redirect (saves Python RAM/CPU)
VOD_USE_X_ACCEL=true
# --- Streamlink & Recorder Options ---
# Optional Twitch OAuth token to bypass ads / load subscriber qualities
# STREAM_RECORDER_TWITCH_OAUTH=
# LIVE_TWITCH_OAUTH=
# LIVE_TWITCH_ANONYMOUS=true
# Optional playlist proxy. Off by default and no proxy is built in: name one
# you operate or trust yourself. Check the platform's terms before enabling.
# STREAM_RECORDER_USE_PROXY=false
# TWITCH_PROXY_PLAYLIST=https://proxy.example.com
# STREAMLINK_PLUGIN_DIR=
# Optional Twitch API Client (for metadata auto-sync and EventSub)
# TWITCH_CLIENT_ID=your_twitch_client_id_here
# TWITCH_CLIENT_SECRET=your_twitch_client_secret_here
# --- System Backups (Admin -> Backups) ---
# Directory listed for streamrecorder_*.tar.gz files (default: <VOD_META_DIR>/backups)
# BACKUP_DIR=/var/backups/streamvault
# Script run by "Backup erstellen"; it must write streamrecorder_*.tar.gz into BACKUP_DIR
# VOD_BACKUP_SCRIPT=/usr/local/bin/streamvault-backup.sh
# --- Performance & Caching ---
# Optional Redis cache for high-concurrency deployments
# REDIS_URL=redis://127.0.0.1:6379/0
# --- Storage Health & Alerting ---
STORAGE_ALERT_THRESHOLD_PCT=90
STORAGE_ALERT_THRESHOLD_FREE_GB=25
STORAGE_ALERT_CHECK_INTERVAL_SEC=60
STORAGE_ALERT_COOLDOWN_SEC=21600
# Optional Discord webhook URL for automated disk space warnings
# STORAGE_ALERT_WEBHOOK_URL=https://discord.com/api/webhooks/...