version: '3.6' services: base: image: bbb hostname: meet.livingutopia.org cap_add: - SYS_NICE # for realtime scheduling - SYS_ADMIN # for systemd environment: - container=docker tmpfs: - /run - /run/lock - /tmp:exec,mode=777 volumes: - /sys/fs/cgroup:/sys/fs/cgroup:ro # for systemd - ./setup.sh:/opt/setup.sh - ./mod/freeswitch/vars.xml:/opt/freeswitch/conf/vars.xml - ./mod/freeswitch/external.xml:/opt/freeswitch/conf/sip_profiles/external.xml - ./mod/html5/systemd_start.sh:/usr/share/meteor/bundle/systemd_start.sh - ./mod/html5/config.yml:/usr/share/meteor/bundle/programs/server/assets/app/config/settings.yml - ./mod/web/override.conf:/etc/systemd/system/bbb-web.service.d/override.conf - ./mod/web/bigbluebutton.properties:/usr/share/bbb-web/WEB-INF/classes/bigbluebutton.properties - ./mod/bbb-webrtc-sfu/config.yml:/usr/local/bigbluebutton/bbb-webrtc-sfu/config/default.yml network_mode: host nginx: image: nginx:1.17 depends_on: - etherpad - webrtc-sfu ports: - "80:80" volumes: - ./mod/nginx/bbb:/etc/nginx/bbb - ./mod/nginx/bigbluebutton:/etc/nginx/conf.d/default.conf networks: - bluenet extra_hosts: - "host.docker.internal:10.7.7.1" etherpad: image: etherpad/etherpad:1.8.0 depends_on: - redis environment: ETHERPAD_API_KEY: ${ETHERPAD_API_KEY} volumes: - ./mod/pad/settings.json:/opt/etherpad-lite/settings.json - ./mod/pad/entrypoint.sh:/entrypoint.sh entrypoint: /entrypoint.sh networks: bluenet: ipv4_address: 10.7.7.4 redis: image: redis:3.0-alpine ports: - "127.0.0.1:6379:6379" # TODO: remove as soon as we updated all redis host references networks: bluenet: ipv4_address: 10.7.7.5 kurento: image: kurento/kurento-media-server:6.13 environment: KMS_STUN_IP: 64.233.177.127 # google stun server KMS_STUN_PORT: 19302 KMS_MIN_PORT: 24577 KMS_MAX_PORT: 32768 KMS_EXTERNAL_ADDRESS: KMS_TURN_URL: network_mode: host webrtc-sfu: build: ./bbb-webrtc-sfu depends_on: - redis - kurento - base environment: CLIENT_HOST: 0.0.0.0 KURENTO_NAME: kurento REDIS_HOST: redis FREESWITCH_IP: host.docker.internal FREESWITCH_SIP_IP: 144.76.97.34 ESL_IP: host.docker.internal LOG_LEVEL: debug NODE_CONFIG: '{"kurento":[{"ip":"144.76.97.34","url":"ws://kurento:8888/kurento"}]}' ports: - "127.0.0.1:3008:3008" extra_hosts: - host.docker.internal:10.7.7.1 - kurento:10.7.7.1 networks: - bluenet networks: bluenet: ipam: driver: default config: - subnet: "10.7.7.0/24"