Rails API, app Flutter, infrastruttura Docker/MediaMTX, sito marketing e documentazione di deploy. Co-authored-by: Cursor <cursoragent@cursor.com>
31 lines
982 B
Plaintext
31 lines
982 B
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://YOUR_PUBLIC_IP_OR_DOMAIN:1935
|
|
|
|
# Dominio pubblico (Nginx Proxy Manager → Rails :3000)
|
|
APP_PUBLIC_URL=https://matchlivetv.yourdomain.com
|
|
HLS_PUBLIC_URL=https://matchlivetv.yourdomain.com/hls
|
|
|
|
CORS_ORIGINS=https://matchlivetv.yourdomain.com
|
|
ALLOWED_HOSTS=matchlivetv.yourdomain.com,192.168.1.146
|
|
YOUTUBE_REDIRECT_URI=https://matchlivetv.yourdomain.com/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
|