Files
MatchLiveTv/infra/.env.production.example
Emiliano Frascaro 4083bc5dee Club come entità principale, branding e fix infrastruttura streaming.
Introduce clubs con abbonamento, branding Active Storage e flusso registrazione società; corregge healthcheck MediaMTX (immagine distroless) e allinea dominio produzione matchlivetv.it.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-27 09:16:24 +02:00

47 lines
1.4 KiB
Plaintext

# Copia come .env sul server: cp .env.production.example .env
# Genera secret: openssl rand -hex 32
POSTGRES_PASSWORD=CHANGE_ME_STRONG_PASSWORD
SECRET_KEY_BASE=CHANGE_ME_openssl_rand_hex_64
JWT_SECRET=CHANGE_ME_openssl_rand_hex_32
MEDIAMTX_WEBHOOK_SECRET=CHANGE_ME_openssl_rand_hex_32
# RTMP pubblico per telefoni (IP WAN o DDNS + porta 1935)
MEDIAMTX_RTMP_URL=rtmp://www.matchlivetv.it:1935
# Dominio pubblico (Nginx Proxy Manager → Rails :3000)
APP_PUBLIC_URL=https://www.matchlivetv.it
HLS_PUBLIC_URL=https://www.matchlivetv.it/hls
CORS_ORIGINS=https://www.matchlivetv.it,https://matchlivetv.it
ALLOWED_HOSTS=www.matchlivetv.it,matchlivetv.it,192.168.1.146,localhost
YOUTUBE_REDIRECT_URI=https://www.matchlivetv.it/api/v1/youtube/callback
# YouTube OAuth (opzionale)
YOUTUBE_CLIENT_ID=
YOUTUBE_CLIENT_SECRET=
# Stripe (abbonamento Premium squadra)
STRIPE_SECRET_KEY=
STRIPE_WEBHOOK_SECRET=
STRIPE_PREMIUM_LIGHT_PRICE_ID=
STRIPE_PREMIUM_FULL_PRICE_ID=
RAILS_LOG_LEVEL=info
# Titolare trattamento (GDPR) — obbligatorio in produzione
PRIVACY_CONTROLLER_NAME=Emiliano Frascaro
PRIVACY_CONTROLLER_ADDRESS=Via Guido De Ruggiero, 89 - 20142 - Milano (MI)
PRIVACY_CONTACT_EMAIL=privacy@matchlive.it
PRIVACY_CONTROLLER_VAT=
# Email transazionali (reset password, inviti)
MAILER_FROM=Match Live TV <noreply@matchlive.it>
SMTP_ADDRESS=
SMTP_PORT=587
SMTP_USERNAME=
SMTP_PASSWORD=
SMTP_AUTH=plain
SMTP_STARTTLS=true
PASSWORD_RESET_EXPIRY_HOURS=2