2020-04-09 15:43:58 +02:00
|
|
|
version: '3.6'
|
2020-04-09 08:48:47 +02:00
|
|
|
|
2019-12-09 04:34:03 +01:00
|
|
|
services:
|
2020-04-10 11:29:44 +02:00
|
|
|
core:
|
2020-04-12 16:18:21 +02:00
|
|
|
build: mod/core
|
2020-05-02 10:28:59 +02:00
|
|
|
restart: unless-stopped
|
2020-04-11 10:43:25 +02:00
|
|
|
depends_on:
|
|
|
|
- redis
|
2019-12-09 04:34:03 +01:00
|
|
|
environment:
|
2020-04-10 11:29:44 +02:00
|
|
|
DOMAIN: ${DOMAIN}
|
|
|
|
SHARED_SECRET: ${SHARED_SECRET}
|
2020-07-18 19:13:29 +02:00
|
|
|
WELCOME_MESSAGE: ${WELCOME_MESSAGE:-}
|
2020-04-10 11:29:44 +02:00
|
|
|
WELCOME_FOOTER: ${WELCOME_FOOTER}
|
2020-05-15 23:21:03 +02:00
|
|
|
STUN_SERVER: stun:${STUN_IP}:${STUN_PORT}
|
2020-06-06 14:39:31 +02:00
|
|
|
TURN_SERVER: ${TURN_SERVER:-}
|
|
|
|
TURN_SECRET: ${TURN_SECRET:-}
|
2019-12-09 04:34:03 +01:00
|
|
|
volumes:
|
2020-04-11 11:29:50 +02:00
|
|
|
- bigbluebutton:/var/bigbluebutton
|
2020-05-15 21:13:59 +02:00
|
|
|
networks:
|
|
|
|
bbb-net:
|
|
|
|
ipv4_address: 10.7.7.2
|
2020-04-09 08:48:47 +02:00
|
|
|
|
2020-05-14 15:21:21 +02:00
|
|
|
freeswitch:
|
|
|
|
build: mod/freeswitch
|
2020-06-06 20:06:28 +02:00
|
|
|
restart: unless-stopped
|
2020-05-14 15:21:21 +02:00
|
|
|
cap_add:
|
|
|
|
- IPC_LOCK
|
|
|
|
- NET_ADMIN
|
|
|
|
- NET_RAW
|
|
|
|
- NET_BROADCAST
|
|
|
|
- SYS_NICE
|
|
|
|
- SYS_RESOURCE
|
|
|
|
environment:
|
|
|
|
DOMAIN: ${DOMAIN}
|
|
|
|
EXTERNAL_IP: ${EXTERNAL_IP}
|
2020-06-23 00:21:24 +02:00
|
|
|
SIP_IP_ALLOWLIST: ${SIP_IP_ALLOWLIST}
|
|
|
|
NETWORK_INTERFACE: ${NETWORK_INTERFACE:-}
|
2020-07-18 19:12:19 +02:00
|
|
|
DISABLE_SOUND_MUTED: ${DISABLE_SOUND_MUTED:-false}
|
|
|
|
DISABLE_SOUND_ALONE: ${DISABLE_SOUND_ALONE:-false}
|
2020-05-14 15:21:21 +02:00
|
|
|
volumes:
|
|
|
|
- ./conf/sip_profiles:/etc/freeswitch/sip_profiles/external
|
|
|
|
- ./conf/dialplan_public:/etc/freeswitch/dialplan/public_docker
|
|
|
|
network_mode: host
|
|
|
|
|
2020-04-09 08:48:47 +02:00
|
|
|
nginx:
|
2020-06-23 00:10:33 +02:00
|
|
|
image: nginx:1.19-alpine
|
2020-05-02 10:28:59 +02:00
|
|
|
restart: unless-stopped
|
2020-04-09 18:15:06 +02:00
|
|
|
depends_on:
|
|
|
|
- etherpad
|
|
|
|
- webrtc-sfu
|
2020-04-09 22:33:27 +02:00
|
|
|
- html5
|
2020-04-09 08:48:47 +02:00
|
|
|
ports:
|
2020-04-12 16:01:57 +02:00
|
|
|
- "8080:80"
|
2020-04-09 08:48:47 +02:00
|
|
|
volumes:
|
2020-04-11 11:29:50 +02:00
|
|
|
- bigbluebutton:/var/bigbluebutton
|
2020-04-09 08:48:47 +02:00
|
|
|
- ./mod/nginx/bbb:/etc/nginx/bbb
|
|
|
|
- ./mod/nginx/bigbluebutton:/etc/nginx/conf.d/default.conf
|
2020-05-22 15:35:28 +02:00
|
|
|
- ${DEFAULT_PRESENTATION:-/dev/null}:/etc/nginx/html/default.pdf
|
2020-04-09 08:48:47 +02:00
|
|
|
networks:
|
2020-05-26 17:24:55 +02:00
|
|
|
bbb-net:
|
|
|
|
ipv4_address: 10.7.7.13
|
2020-04-09 08:48:47 +02:00
|
|
|
extra_hosts:
|
|
|
|
- "host.docker.internal:10.7.7.1"
|
|
|
|
|
2020-04-09 15:43:58 +02:00
|
|
|
etherpad:
|
2020-05-31 11:27:32 +02:00
|
|
|
build: mod/etherpad
|
2020-05-02 10:28:59 +02:00
|
|
|
restart: unless-stopped
|
2020-04-09 18:15:06 +02:00
|
|
|
depends_on:
|
|
|
|
- redis
|
2020-04-09 15:43:58 +02:00
|
|
|
environment:
|
|
|
|
ETHERPAD_API_KEY: ${ETHERPAD_API_KEY}
|
|
|
|
networks:
|
2020-04-12 16:01:57 +02:00
|
|
|
bbb-net:
|
2020-04-09 15:43:58 +02:00
|
|
|
ipv4_address: 10.7.7.4
|
2020-04-09 08:48:47 +02:00
|
|
|
|
2020-04-09 15:43:58 +02:00
|
|
|
redis:
|
2020-05-22 15:00:17 +02:00
|
|
|
image: redis:6.0-alpine
|
2020-05-02 10:28:59 +02:00
|
|
|
restart: unless-stopped
|
2020-04-09 15:43:58 +02:00
|
|
|
ports:
|
|
|
|
- "127.0.0.1:6379:6379" # TODO: remove as soon as we updated all redis host references
|
|
|
|
networks:
|
2020-04-12 16:01:57 +02:00
|
|
|
bbb-net:
|
2020-04-09 15:43:58 +02:00
|
|
|
ipv4_address: 10.7.7.5
|
2020-04-09 18:13:18 +02:00
|
|
|
|
2020-04-09 18:27:47 +02:00
|
|
|
mongodb:
|
2020-04-12 20:34:48 +02:00
|
|
|
image: mongo:4.2
|
2020-06-06 20:06:28 +02:00
|
|
|
restart: unless-stopped
|
2020-04-09 18:27:47 +02:00
|
|
|
networks:
|
2020-04-12 16:01:57 +02:00
|
|
|
bbb-net:
|
2020-04-09 18:27:47 +02:00
|
|
|
ipv4_address: 10.7.7.6
|
|
|
|
|
2020-04-09 18:13:18 +02:00
|
|
|
kurento:
|
2020-06-23 00:10:33 +02:00
|
|
|
image: kurento/kurento-media-server:6.14
|
2020-05-02 10:28:59 +02:00
|
|
|
restart: unless-stopped
|
2020-04-09 18:13:18 +02:00
|
|
|
environment:
|
2020-04-10 13:29:06 +02:00
|
|
|
KMS_STUN_IP: ${STUN_IP}
|
|
|
|
KMS_STUN_PORT: ${STUN_PORT}
|
2020-04-09 18:13:18 +02:00
|
|
|
KMS_MIN_PORT: 24577
|
|
|
|
KMS_MAX_PORT: 32768
|
2020-04-20 17:26:40 +02:00
|
|
|
KMS_EXTERNAL_ADDRESS: ${EXTERNAL_IP}
|
2020-05-31 00:14:14 +02:00
|
|
|
KMS_TURN_URL:
|
|
|
|
KMS_NETWORK_INTERFACES: ${NETWORK_INTERFACE:-}
|
2020-04-09 18:15:06 +02:00
|
|
|
network_mode: host
|
2020-04-09 15:43:58 +02:00
|
|
|
|
2020-04-09 18:15:06 +02:00
|
|
|
webrtc-sfu:
|
2020-04-12 20:20:50 +02:00
|
|
|
build:
|
|
|
|
context: ./bbb-webrtc-sfu
|
2020-04-12 20:34:48 +02:00
|
|
|
dockerfile: ../mod/webrtc-sfu/Dockerfile
|
2020-05-02 10:28:59 +02:00
|
|
|
restart: unless-stopped
|
2020-04-09 18:15:06 +02:00
|
|
|
depends_on:
|
|
|
|
- redis
|
|
|
|
- kurento
|
2020-04-10 11:29:44 +02:00
|
|
|
- core
|
2020-04-09 18:15:06 +02:00
|
|
|
environment:
|
|
|
|
CLIENT_HOST: 0.0.0.0
|
|
|
|
KURENTO_NAME: kurento
|
|
|
|
REDIS_HOST: redis
|
|
|
|
FREESWITCH_IP: host.docker.internal
|
2020-04-12 20:23:52 +02:00
|
|
|
FREESWITCH_SIP_IP: ${EXTERNAL_IP}
|
2020-04-09 18:15:06 +02:00
|
|
|
ESL_IP: host.docker.internal
|
2020-04-11 10:43:25 +02:00
|
|
|
LOG_LEVEL: info
|
2020-04-10 13:29:06 +02:00
|
|
|
NODE_CONFIG: '{"kurento":[{"ip":"${EXTERNAL_IP}","url":"ws://kurento:8888/kurento"}]}'
|
2020-04-09 18:15:06 +02:00
|
|
|
ports:
|
|
|
|
- "127.0.0.1:3008:3008"
|
|
|
|
extra_hosts:
|
|
|
|
- host.docker.internal:10.7.7.1
|
|
|
|
- kurento:10.7.7.1
|
|
|
|
networks:
|
2020-05-26 17:24:55 +02:00
|
|
|
bbb-net:
|
|
|
|
ipv4_address: 10.7.7.10
|
2020-04-09 18:15:06 +02:00
|
|
|
|
2020-04-09 22:33:27 +02:00
|
|
|
html5:
|
2020-04-12 16:18:21 +02:00
|
|
|
build: mod/html5
|
2020-05-02 10:28:59 +02:00
|
|
|
restart: unless-stopped
|
2020-04-09 22:33:27 +02:00
|
|
|
depends_on:
|
|
|
|
- redis
|
2020-04-11 10:43:25 +02:00
|
|
|
- mongodb
|
2020-04-09 22:33:27 +02:00
|
|
|
- etherpad
|
2020-04-10 13:29:06 +02:00
|
|
|
environment:
|
|
|
|
DOMAIN: ${DOMAIN}
|
|
|
|
CLIENT_TITLE: ${CLIENT_TITLE}
|
|
|
|
ETHERPAD_API_KEY: ${ETHERPAD_API_KEY}
|
2020-07-18 19:13:29 +02:00
|
|
|
LISTEN_ONLY_MODE: ${LISTEN_ONLY_MODE:-true}
|
|
|
|
DISABLE_ECHO_TEST: ${DISABLE_ECHO_TEST:-false}
|
|
|
|
AUTO_SHARE_WEBCAM: ${AUTO_SHARE_WEBCAM:-false}
|
|
|
|
DISABLE_VIDEO_PREVIEW: ${DISABLE_VIDEO_PREVIEW:-false}
|
|
|
|
CHAT_ENABLED: ${CHAT_ENABLED:-true}
|
|
|
|
CHAT_START_CLOSED: ${CHAT_START_CLOSED:-false}
|
2020-04-09 22:33:27 +02:00
|
|
|
networks:
|
2020-05-26 17:24:55 +02:00
|
|
|
bbb-net:
|
|
|
|
ipv4_address: 10.7.7.11
|
2020-04-11 11:29:50 +02:00
|
|
|
|
2020-05-22 14:56:45 +02:00
|
|
|
periodic:
|
|
|
|
build: mod/periodic
|
|
|
|
restart: unless-stopped
|
|
|
|
depends_on:
|
|
|
|
- mongodb
|
|
|
|
volumes:
|
|
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
|
|
- bigbluebutton:/var/bigbluebutton
|
|
|
|
networks:
|
2020-05-26 17:24:55 +02:00
|
|
|
bbb-net:
|
|
|
|
ipv4_address: 10.7.7.12
|
2020-05-22 14:56:45 +02:00
|
|
|
|
2020-04-11 11:29:50 +02:00
|
|
|
volumes:
|
|
|
|
bigbluebutton:
|
|
|
|
|
2020-04-09 08:48:47 +02:00
|
|
|
networks:
|
2020-04-12 16:01:57 +02:00
|
|
|
bbb-net:
|
2020-04-09 08:48:47 +02:00
|
|
|
ipam:
|
2020-04-09 15:43:58 +02:00
|
|
|
driver: default
|
|
|
|
config:
|
2020-04-20 17:26:40 +02:00
|
|
|
- subnet: "10.7.7.0/24"
|