version: "3.8" services: redis: image: bitnami/redis:latest ports: - "6379:6379" environment: - ALLOW_EMPTY_PASSWORD=yes mongo: image: mongo:latest ports: - "27017:27017" volumes: - mongo_data:/data/db environment: - MONGO_INITDB_ROOT_USERNAME=${MONGO_INITDB_ROOT_USERNAME} - MONGO_INITDB_ROOT_PASSWORD=${MONGO_INITDB_ROOT_PASSWORD} coturn: image: instrumentisto/coturn:latest network_mode: host # ports: # - "3479:3478" # - "49152-65535:49152-65535/udp" volumes: - ./.nginx/cert/:/cert/ command: - -n - --lt-cred-mech - --fingerprint - --no-multicast-peers - --cli-password=${TURN_PASSWORD} - --no-tlsv1 - --no-tlsv1_1 - --fingerprint - --lt-cred-mech - --verbose - --user=${TURN_USERNAME}:${TURN_PASSWORD} - --realm=coturn.roomler.live - --listening-ip=$$(detect-external-ip) # - --relay-ip=$$(detect-external-ip) - --external-ip=$$(detect-external-ip) - --cert=/cert/roomler.live.pem - --pkey=/cert/roomler.live.key janus: image: gjovanov/janus-slim:latest # ports: # - "7089:7088" # - "7189:7188" # - "8089:8088" # - "8189:8188" depends_on: - coturn network_mode: host roomler: image: gjovanov/roomler:latest ports: - "3000:3000" depends_on: - mongo - redis volumes: - uploads:/roomler/ui/static/uploads environment: - URL=${URL} # your URL - API_URL=${API_URL} # your API URL - DB_CONN=${DB_CONN} - WS_SCALEOUT_ENABLED=true - WS_SCALEOUT_HOST=redis - SENDGRID_API_KEY=${SENDGRID_API_KEY} - FACEBOOK_ID=${FACEBOOK_ID} - FACEBOOK_SECRET=${FACEBOOK_SECRET} - GOOGLE_ID=${GOOGLE_ID} - GOOGLE_SECRET=${GOOGLE_SECRET} - GITHUB_ID=${GITHUB_ID} - GITHUB_SECRET=${GITHUB_SECRET} - LINKEDIN_ID=${LINKEDIN_ID} - LINKEDIN_SECRET=${LINKEDIN_SECRET} - MICROSOFT_ID=${MICROSOFT_ID} - MICROSOFT_SECRET=${MICROSOFT_SECRET} - TURN_URL=turn:${TURN_URL} - TURN_USERNAME=${TURN_USERNAME} - TURN_PASSWORD=${TURN_PASSWORD} - GIPHY_API_KEY=${GIPHY_API_KEY} - GOOGLE_ANALYTICS_ID=${GOOGLE_ANALYTICS_ID} - SUPER_ADMIN_EMAILS=${SUPER_ADMIN_EMAILS} - WEB_PUSH_CONTACT=${WEB_PUSH_CONTACT} - WEB_PUSH_PUBLISH_KEY=${WEB_PUSH_PUBLISH_KEY} - WEB_PUSH_PRIVATE_KEY=${WEB_PUSH_PRIVATE_KEY} - ASTERISK_URL=${ASTERISK_URL} - ASTERISK_ARI_URL=${ASTERISK_ARI_URL} - ASTERISK_ARI_USERNAME=${ASTERISK_ARI_USERNAME} - ASTERISK_ARI_PASSWORD=${ASTERISK_ARI_PASSWORD} - ASTERISK_ARI_APP=${ASTERISK_ARI_APP} - ASTERISK_ARI_GENERATE_ACCOUNTS=${ASTERISK_ARI_GENERATE_ACCOUNTS} - NUXT_TELEMETRY_DISABLED=${NUXT_TELEMETRY_DISABLED} nginx: image: gjovanov/nginx:latest ports: - "${IP1}:80:80" - "${IP1}:443:443/tcp" - "${IP1}:443:443/udp" depends_on: - roomler - coturn - janus volumes: - ./.nginx/nginx.conf:/etc/nginx/nginx.conf - ./.nginx/conf.d/:/etc/nginx/conf.d/ - ./.nginx/cert/:/etc/nginx/cert/ - ./.nginx/logs/:/etc/nginx/logs/ nginx2: image: gjovanov/nginx:latest ports: - "${IP2}:80:80" - "${IP2}:443:443/tcp" - "${IP2}:443:443/udp" depends_on: - roomler - coturn - janus volumes: - ./.nginx/coturn/nginx.conf:/etc/nginx/nginx.conf - ./.nginx/cert/:/etc/nginx/cert/ - ./.nginx/logs/:/etc/nginx/logs/ volumes: uploads: mongo_data: