version: "3.7" services: coturn: image: coturn/coturn:4.6 restart: unless-stopped ports: - "${LISTENING_PORT}:${LISTENING_PORT}" #- "${LISTENING_PORT_TLS}:${LISTENING_PORT_TLS}" - "${MIN_PORT}-${MAX_PORT}:${MIN_PORT}-${MAX_PORT}/udp" command: - "--realm=${COTURN_VIRTUAL_HOST}" #- "--server-name=turn-server" - "--fingerprint" - "--listening-ip=0.0.0.0" - "--external-ip=${EXTERNAL_IP}" #- "--relay-ip=${EXTERNAL_IP}" - "--listening-port=${LISTENING_PORT}" - "--min-port=${MIN_PORT}" - "--max-port=${MAX_PORT}" - "--log-file=stdout" #- "--tls-listening-port=${LISTENING_PORT_TLS}" - "--use-auth-secret" - "--static-auth-secret=${STATIC_AUTH_SECRET}" - "--verbose" labels: traefik.enable: true traefik.port: ${LISTENING_PORT} traefik.http.routers.turn-server.tls: true traefik.http.routers.turn-server.rule: Host(`${COTURN_VIRTUAL_HOST}`) traefik.http.routers.turn-server.entrypoints: websecure traefik.http.routers.turn-server.tls.certresolver: defaultresolver #traefik.udp.routers.turn-server-udp.entrypoints: turn-udp #traefik.udp.routers.turn-server-udp.service: turn-server-udp #traefik.udp.services.turn-server-udp.loadbalancer.server.port: ${LISTENING_PORT} networks: - public networks: public: external: name: traefik_public