Avvia i relay YouTube overflow dal Sidekiq home e passa STREAM/HCLOUD in produzione.
Così un CPX nuovo non richiede worker Docker a mano, l'agent è nel cloud-init e gli E2E restano non in elenco. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -53,6 +53,8 @@ services:
|
||||
dockerfile: Dockerfile
|
||||
restart: unless-stopped
|
||||
command: bundle exec rails server -b 0.0.0.0 -p 3000 -e production
|
||||
env_file:
|
||||
- .env
|
||||
environment:
|
||||
RAILS_ENV: production
|
||||
RAILS_MAX_THREADS: ${RAILS_MAX_THREADS:-5}
|
||||
@@ -70,6 +72,33 @@ services:
|
||||
YOUTUBE_CLIENT_SECRET: ${YOUTUBE_CLIENT_SECRET:-}
|
||||
YOUTUBE_REDIRECT_URI: ${YOUTUBE_REDIRECT_URI:-}
|
||||
YOUTUBE_PLATFORM_REFRESH_TOKEN: ${YOUTUBE_PLATFORM_REFRESH_TOKEN:-}
|
||||
STREAM_NODE_AGENT_SECRET: ${STREAM_NODE_AGENT_SECRET:-mediamtx_webhook_dev_secret}
|
||||
STREAM_NODE_HOME_MAX_PUBLISHERS: ${STREAM_NODE_HOME_MAX_PUBLISHERS:-6}
|
||||
STREAM_CLOUD_PROVIDER: ${STREAM_CLOUD_PROVIDER:-local_lab}
|
||||
STREAM_DNS_PROVIDER: ${STREAM_DNS_PROVIDER:-hetzner}
|
||||
STREAM_AUTOSCALE_ENABLED: ${STREAM_AUTOSCALE_ENABLED:-0}
|
||||
STREAM_AUTOSCALE_KIND: ${STREAM_AUTOSCALE_KIND:-lab}
|
||||
STREAM_AUTOSCALE_ALLOW_CLOUD: ${STREAM_AUTOSCALE_ALLOW_CLOUD:-0}
|
||||
STREAM_AUTOSCALE_SOFT_FREE_SLOTS: ${STREAM_AUTOSCALE_SOFT_FREE_SLOTS:-2}
|
||||
STREAM_AUTOSCALE_WARM_SPARE: ${STREAM_AUTOSCALE_WARM_SPARE:-1}
|
||||
STREAM_AUTOSCALE_MAX_NODES: ${STREAM_AUTOSCALE_MAX_NODES:-3}
|
||||
STREAM_AUTOSCALE_IDLE_MINUTES: ${STREAM_AUTOSCALE_IDLE_MINUTES:-30}
|
||||
STREAM_AUTOSCALE_INTERVAL_SECS: ${STREAM_AUTOSCALE_INTERVAL_SECS:-60}
|
||||
STREAM_AUTOSCALE_NODE_EUR_PER_HOUR: ${STREAM_AUTOSCALE_NODE_EUR_PER_HOUR:-0.015}
|
||||
STREAM_AUTOSCALE_MONTHLY_BUDGET_EUR: ${STREAM_AUTOSCALE_MONTHLY_BUDGET_EUR:-40}
|
||||
STREAM_CLOUD_PUBLIC_CONTROL: ${STREAM_CLOUD_PUBLIC_CONTROL:-1}
|
||||
STREAM_NODE_ENV: ${STREAM_NODE_ENV:-prod}
|
||||
STREAM_DNS_ZONE: ${STREAM_DNS_ZONE:-mltv-stream.net}
|
||||
STREAM_DNS_TTL: ${STREAM_DNS_TTL:-60}
|
||||
STREAM_CLOUD_DNS_SUFFIX: ${STREAM_CLOUD_DNS_SUFFIX:-mltv-stream.net}
|
||||
STREAM_CLOUD_MAX_PUBLISHERS: ${STREAM_CLOUD_MAX_PUBLISHERS:-4}
|
||||
HCLOUD_TOKEN: ${HCLOUD_TOKEN:-}
|
||||
HCLOUD_LOCATION: ${HCLOUD_LOCATION:-nbg1}
|
||||
HCLOUD_SERVER_TYPE: ${HCLOUD_SERVER_TYPE:-cpx12}
|
||||
HCLOUD_IMAGE: ${HCLOUD_IMAGE:-debian-12}
|
||||
HCLOUD_SSH_KEY: ${HCLOUD_SSH_KEY:-matchlivetv-stream-hetzner}
|
||||
HCLOUD_NETWORK_ID: ${HCLOUD_NETWORK_ID:-}
|
||||
HCLOUD_USER_DATA_FILE: /opt/matchlivetv/infra/stream-node/cloud-init.yaml
|
||||
HLS_PUBLIC_URL: ${HLS_PUBLIC_URL:-http://localhost:8888}
|
||||
APP_PUBLIC_URL: ${APP_PUBLIC_URL:-http://localhost:3000}
|
||||
PRIVACY_CONTACT_EMAIL: ${PRIVACY_CONTACT_EMAIL:-privacy@matchlivetv.it}
|
||||
@@ -166,6 +195,8 @@ services:
|
||||
restart: unless-stopped
|
||||
hostname: home
|
||||
command: bundle exec sidekiq -C config/sidekiq.yml -e production
|
||||
env_file:
|
||||
- .env
|
||||
environment:
|
||||
RAILS_ENV: production
|
||||
RAILS_MAX_THREADS: ${RAILS_MAX_THREADS:-5}
|
||||
@@ -182,6 +213,33 @@ services:
|
||||
YOUTUBE_PLATFORM_REFRESH_TOKEN: ${YOUTUBE_PLATFORM_REFRESH_TOKEN:-}
|
||||
YOUTUBE_RELAY_WORKER: "1"
|
||||
STREAM_NODE_SLUG: home
|
||||
STREAM_NODE_HOME_MAX_PUBLISHERS: ${STREAM_NODE_HOME_MAX_PUBLISHERS:-6}
|
||||
STREAM_CLOUD_PROVIDER: ${STREAM_CLOUD_PROVIDER:-local_lab}
|
||||
STREAM_DNS_PROVIDER: ${STREAM_DNS_PROVIDER:-hetzner}
|
||||
STREAM_AUTOSCALE_ENABLED: ${STREAM_AUTOSCALE_ENABLED:-0}
|
||||
STREAM_AUTOSCALE_KIND: ${STREAM_AUTOSCALE_KIND:-lab}
|
||||
STREAM_AUTOSCALE_ALLOW_CLOUD: ${STREAM_AUTOSCALE_ALLOW_CLOUD:-0}
|
||||
STREAM_AUTOSCALE_SOFT_FREE_SLOTS: ${STREAM_AUTOSCALE_SOFT_FREE_SLOTS:-2}
|
||||
STREAM_AUTOSCALE_WARM_SPARE: ${STREAM_AUTOSCALE_WARM_SPARE:-1}
|
||||
STREAM_AUTOSCALE_MAX_NODES: ${STREAM_AUTOSCALE_MAX_NODES:-3}
|
||||
STREAM_AUTOSCALE_IDLE_MINUTES: ${STREAM_AUTOSCALE_IDLE_MINUTES:-30}
|
||||
STREAM_AUTOSCALE_INTERVAL_SECS: ${STREAM_AUTOSCALE_INTERVAL_SECS:-60}
|
||||
STREAM_AUTOSCALE_NODE_EUR_PER_HOUR: ${STREAM_AUTOSCALE_NODE_EUR_PER_HOUR:-0.015}
|
||||
STREAM_AUTOSCALE_MONTHLY_BUDGET_EUR: ${STREAM_AUTOSCALE_MONTHLY_BUDGET_EUR:-40}
|
||||
STREAM_CLOUD_PUBLIC_CONTROL: ${STREAM_CLOUD_PUBLIC_CONTROL:-1}
|
||||
STREAM_NODE_ENV: ${STREAM_NODE_ENV:-prod}
|
||||
STREAM_DNS_ZONE: ${STREAM_DNS_ZONE:-mltv-stream.net}
|
||||
STREAM_DNS_TTL: ${STREAM_DNS_TTL:-60}
|
||||
STREAM_CLOUD_DNS_SUFFIX: ${STREAM_CLOUD_DNS_SUFFIX:-mltv-stream.net}
|
||||
STREAM_CLOUD_MAX_PUBLISHERS: ${STREAM_CLOUD_MAX_PUBLISHERS:-4}
|
||||
HCLOUD_TOKEN: ${HCLOUD_TOKEN:-}
|
||||
HCLOUD_LOCATION: ${HCLOUD_LOCATION:-nbg1}
|
||||
HCLOUD_SERVER_TYPE: ${HCLOUD_SERVER_TYPE:-cpx12}
|
||||
HCLOUD_IMAGE: ${HCLOUD_IMAGE:-debian-12}
|
||||
HCLOUD_SSH_KEY: ${HCLOUD_SSH_KEY:-matchlivetv-stream-hetzner}
|
||||
HCLOUD_NETWORK_ID: ${HCLOUD_NETWORK_ID:-}
|
||||
HCLOUD_USER_DATA_FILE: /opt/matchlivetv/infra/stream-node/cloud-init.yaml
|
||||
STREAM_NODE_AGENT_SECRET: ${STREAM_NODE_AGENT_SECRET:-mediamtx_webhook_dev_secret}
|
||||
STREAM_NODE_LOCAL_RTMP_URL: rtmp://mediamtx:1935
|
||||
STREAM_NODE_LOCAL_HLS_URL: http://mediamtx:8888
|
||||
RAILS_INTERNAL_URL: http://rails:3000
|
||||
|
||||
Reference in New Issue
Block a user