# ------------------------------------------------------------------------------ # # DO NOT MODIFY THIS FILE !!! # # Configuration properties should be specified in .env file # # This docker-compose file coordinates all services of OpenVidu Enterprise HA Node # # This file will be overridden when update OpenVidu Enterprise HA Node # # Openvidu Version: 2.30.0 # # Installation Mode: On Premises # # ------------------------------------------------------------------------------ version: '3.1' services: openvidu-server: image: openvidu/openvidu-server-pro:2.30.0 container_name: openvidu-server restart: on-failure network_mode: host entrypoint: ['/usr/local/bin/entrypoint.sh'] volumes: - ./coturn:/run/secrets/coturn - /var/run/docker.sock:/var/run/docker.sock - ${OPENVIDU_RECORDING_PATH}:${OPENVIDU_RECORDING_PATH} - ${OPENVIDU_RECORDING_CUSTOM_LAYOUT}:${OPENVIDU_RECORDING_CUSTOM_LAYOUT} - ${OPENVIDU_CDR_PATH}:${OPENVIDU_CDR_PATH} - ./cluster:/opt/openvidu/cluster - .env:${PWD}/.env env_file: - .env environment: - SERVER_SSL_ENABLED=false - SERVER_PORT=5443 - KMS_URIS=[] - OPENVIDU_WEBHOOK=false - OPENVIDU_WEBHOOK_ENDPOINT=http://127.0.0.1:7777/webhook - MULTI_MASTER_REPLICATION_MANAGER_WEBHOOK=http://127.0.0.1:4443/openvidu/replication-manager-webhook?OPENVIDU_SECRET=${OPENVIDU_SECRET} - COTURN_IP=${COTURN_IP:-auto-ipv4} - COTURN_PORT=${COTURN_PORT:-443} - OPENVIDU_PRO_CLUSTER=true - OPENVIDU_EDITION=enterprise - OPENVIDU_PRO_CLUSTER_ENVIRONMENT=${OPENVIDU_PRO_CLUSTER_ENVIRONMENT:-on_premise} - OPENVIDU_PRO_CLUSTER_MODE=manual - OPENVIDU_PRO_CLUSTER_AUTOSCALING=false - OPENVIDU_PRO_RECORDING_STORAGE=${OPENVIDU_PRO_RECORDING_STORAGE:-s3} - OPENVIDU_PRO_AWS_S3_WITH_PATH_STYLE_ACCESS=${OPENVIDU_PRO_AWS_S3_WITH_PATH_STYLE_ACCESS:-true} - OPENVIDU_PRO_ELASTICSEARCH=${OPENVIDU_PRO_ELASTICSEARCH:-true} - OPENVIDU_PRO_KIBANA_HOST=${OPENVIDU_PRO_KIBANA_HOST:-http://127.0.0.1/kibana} - OPENVIDU_PRO_ELASTICSEARCH_HOST=${OPENVIDU_PRO_ELASTICSEARCH_HOST:-http://127.0.0.1:9200} - OPENVIDU_PRO_COTURN_IN_MEDIA_NODES=${OPENVIDU_PRO_COTURN_IN_MEDIA_NODES:-false} - OPENVIDU_PRO_COTURN_PORT_MEDIA_NODES=${OPENVIDU_PRO_COTURN_PORT_MEDIA_NODES:-443} - OPENVIDU_PRO_MEDIA_NODE_PUBLIC_IP_AUTODISCOVER=${OPENVIDU_PRO_MEDIA_NODE_PUBLIC_IP_AUTODISCOVER:-auto-ipv4} - OPENVIDU_PRO_CLUSTER_RECONNECTION_TIMEOUT=60 - WAIT_KIBANA_URL=${OPENVIDU_PRO_KIBANA_HOST:-http://127.0.0.1/kibana} - MULTI_MASTER_NODE_ID=${OPENVIDU_ENTERPRISE_HA_NODE_PRIVATE_IP} - DOTENV_PATH=${PWD} - SUPPORT_DEPRECATED_API=false logging: options: max-size: "${DOCKER_LOGS_MAX_SIZE:-100M}" replication-manager: image: openvidu/replication-manager-on-prem:2.30.0 container_name: replication-manager restart: always network_mode: host volumes: - ./:/opt/openvidu - /var/run/docker.sock:/var/run/docker.sock environment: - SERVER_PORT=4443 - SERVER_SSL_ENABLED=false - OPENVIDU_SECRET=${OPENVIDU_SECRET} - LOCAL_OPENVIDU_SERVER_URI=http://127.0.0.1:5443/ - OPENVIDU_PRO_CLUSTER_ENVIRONMENT=${OPENVIDU_PRO_CLUSTER_ENVIRONMENT:-on_premise} - OPENVIDU_PRO_LICENSE=${OPENVIDU_PRO_LICENSE:-} - OPENVIDU_ENTERPRISE_MEDIA_SERVER=${OPENVIDU_ENTERPRISE_MEDIA_SERVER:-} - OPENVIDU_ENTERPRISE_HA_REDIS_HOST=${OPENVIDU_ENTERPRISE_HA_REDIS_HOST} - OPENVIDU_ENTERPRISE_HA_REDIS_PORT=${OPENVIDU_ENTERPRISE_HA_REDIS_PORT} - OPENVIDU_ENTERPRISE_HA_REDIS_PASSWORD=${OPENVIDU_ENTERPRISE_HA_REDIS_PASSWORD} - REDIS_TIMEOUT=5 - REDIS_DB=replicationmanager - OPENVIDU_ENTERPRISE_HA_NODE_PRIVATE_IP=${OPENVIDU_ENTERPRISE_HA_NODE_PRIVATE_IP} - OPENVIDU_ENTERPRISE_HA_S3_CONFIG_SERVICE_ENDPOINT=${OPENVIDU_ENTERPRISE_HA_S3_CONFIG_SERVICE_ENDPOINT} - OPENVIDU_ENTERPRISE_HA_S3_CONFIG_BUCKET=${OPENVIDU_ENTERPRISE_HA_S3_CONFIG_BUCKET} - OPENVIDU_ENTERPRISE_HA_S3_CONFIG_REGION=${OPENVIDU_ENTERPRISE_HA_S3_CONFIG_REGION:-} - OPENVIDU_ENTERPRISE_HA_S3_CONFIG_ACCESS_KEY=${OPENVIDU_ENTERPRISE_HA_S3_CONFIG_ACCESS_KEY:-} - OPENVIDU_ENTERPRISE_HA_S3_CONFIG_SECRET_KEY=${OPENVIDU_ENTERPRISE_HA_S3_CONFIG_SECRET_KEY:-} - OPENVIDU_ENTERPRISE_HA_S3_CONFIG_PATH_STYLE_ACCESS=${OPENVIDU_ENTERPRISE_HA_S3_CONFIG_PATH_STYLE_ACCESS:-true} - OPENVIDU_ENTERPRISE_HA_S3_CONFIG_HEADERS=${OPENVIDU_ENTERPRISE_HA_S3_CONFIG_HEADERS:-} - OPENVIDU_ENTERPRISE_S3_CONFIG_AUTORESTART=${OPENVIDU_ENTERPRISE_S3_CONFIG_AUTORESTART:-true} - INITIAL_CONFIG_SYNC=${INITIAL_CONFIG_SYNC:-false} logging: options: max-size: "${DOCKER_LOGS_MAX_SIZE:-100M}" coturn: image: openvidu/openvidu-coturn:2.30.0 restart: on-failure env_file: - .env ports: - 443:443/tcp - 443:443/udp environment: - COTURN_INTERNAL_RELAY=${COTURN_INTERNAL_RELAY:-true} volumes: - ./coturn:/run/secrets/coturn command: - --log-file=stdout - --external-ip=$$(detect-external-ip) - --listening-port=${COTURN_PORT:-443} - --fingerprint - --min-port=${COTURN_MIN_PORT:-40000} - --max-port=${COTURN_MAX_PORT:-65535} - --realm=openvidu - --verbose - --use-auth-secret - --static-auth-secret=$${COTURN_SHARED_SECRET_KEY} logging: options: max-size: "${DOCKER_LOGS_MAX_SIZE:-100M}" media-node-controller: image: openvidu/media-node-controller:2.30.0 restart: always ulimits: core: -1 environment: - MEDIA_NODE_CONTROLLER_RECORDINGS_PATH=/opt/openvidu/mncontroller/recordings - KMS_IMAGE=kurento/kurento-media-server:7.1.1 - MEDIASOUP_IMAGE=openvidu/mediasoup-controller:2.30.0 - METRICBEAT_IMAGE=docker.elastic.co/beats/metricbeat-oss:7.8.0 - FILEBEAT_IMAGE=docker.elastic.co/beats/filebeat-oss:7.8.0 - OPENVIDU_RECORDING_IMAGE=openvidu/openvidu-recording:2.30.0 - COTURN_IMAGE=openvidu/openvidu-coturn:2.30.0 - SPEECH_TO_TEXT_IMAGE=openvidu/speech-to-text-service:2.30.0 - NO_COLOR=true ports: - 3000:3000 volumes: - /opt/openvidu/mncontroller/recordings:/opt/openvidu/mncontroller/recordings - /opt/openvidu/beats:/opt/openvidu/beats - /var/run/docker.sock:/var/run/docker.sock - /opt/openvidu/kurento-logs:/opt/openvidu/kurento-logs - ./beats:/beats logging: options: max-size: "100M"