Il relay HLS→RTMPS resta sul worker/agent del nodo assegnato, così tre dirette contemporanee restano in onda sul sito e sul canale della società senza schermo nero. Co-authored-by: Cursor <cursoragent@cursor.com>
42 lines
1.4 KiB
YAML
42 lines
1.4 KiB
YAML
# Collaudo Proxmox (es. 192.168.1.157) — overlay su docker-compose.prod.yml
|
|
#
|
|
# Uso:
|
|
# export COMPOSE_FILE=docker-compose.prod.yml:docker-compose.collaudo.yml
|
|
# docker compose --env-file .env up -d --build
|
|
#
|
|
# Porte host MediaMTX diverse da produzione per non competere sullo stesso IP pubblico:
|
|
# prod WAN :1935 → 192.168.1.146
|
|
# collaudo LAN/WAN opzionale :11935 → 192.168.1.157
|
|
# HTTP resta :3000 (NPM → collaudo.matchlivetv.it); IP LAN diversi = nessun conflitto.
|
|
|
|
services:
|
|
mediamtx:
|
|
ports: !override
|
|
- "11935:1935" # RTMP collaudo (NON usare WAN :1935 di produzione)
|
|
- "18888:8888" # HLS diretto opzionale; in genere basta /hls via edge+NPM
|
|
|
|
# Passa tutto .env (HCLOUD_*, STREAM_*, …) ai processi Rails/Sidekiq
|
|
# Monta cloud-init: HCLOUD_USER_DATA_FILE punta a path host non presente nell'immagine.
|
|
rails:
|
|
env_file:
|
|
- .env
|
|
volumes:
|
|
- ./stream-node:/opt/matchlivetv/infra/stream-node:ro
|
|
|
|
sidekiq:
|
|
hostname: home
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
STREAM_NODE_SLUG: home
|
|
YOUTUBE_RELAY_WORKER: "1"
|
|
STREAM_NODE_LOCAL_RTMP_URL: rtmp://mediamtx:1935
|
|
STREAM_NODE_LOCAL_HLS_URL: http://mediamtx:8888
|
|
volumes:
|
|
- ./stream-node:/opt/matchlivetv/infra/stream-node:ro
|
|
|
|
# ntfy collaudo su porta diversa (evita confusione se si punta per sbaglio l'host)
|
|
ntfy:
|
|
ports: !override
|
|
- "18090:80"
|