Docker Swarm 中的 coturn 无法连接 (kurento)

bzm*_*zmw 5 webrtc docker kurento docker-swarm coturn

当我尝试连接到我的应用程序时,我可以连接并开始发送和接收 ICE 候选。但是协商没有完成rtc连接状态最终进入“Checking”,然后大约30秒后下降到“Failed”

我在本地设置中使用了它,但是一旦我部署到 AWS,它就开始失败。我去修改了 AWS 中的设置并打开了所有端口,现在我可以访问 coturn 服务(通过 http 请求时返回 200),这里的 Trickle 服务工作正常。

我正在使用 Kurento 媒体服务器并希望与该服务建立 websocket 连接。正如我所提到的,这在本地工作,所以我相当确定我发出请求的方式没有任何问题,但它是 AWS 或我的 docker compose 文件的配置选项。

我有一个 docker compose 文件,其中包含三个应用程序:

version: "3.4"
services:
  media-controller:
    image: my-custom-images/my-server:latest.version
    volumes:
      - "tmp-video-storage:/tmp"
    ports:
      - "8899:8899"
  kurento-media-service:
    image: kurento/kurento-media-server:6.6.0
    volumes:
      - "tmp-video-storage:/tmp"
    ports:
      - "8888:8888"
  coturn:
    image: my-custom-images/coturn:lastest.version
    ports:
      - "3478:3478/udp"
      - "3478:3478/tcp"
volumes:
  tmp-video-storage:
Run Code Online (Sandbox Code Playgroud)

coturn 的 /etc/turnserver.conf

min-port=49152
max-port=65535
fingerprint
lt-cred-mech
realm=my-domain.com
log-file stdout
user=username-placeholder:password-placeholder
external-ip=public-ip/private-ip
listening-port=3478
Run Code Online (Sandbox Code Playgroud)

Trickle Ice 候选人的输出:

0.004   1   host    1019731727  udp 192.168.1.104   64702   126 | 32543 | 0
0.068   1   srflx   3180321211  udp 10.255.0.2  64702   100 | 32542 | 255
0.091   1   relay   610197926   udp 35.183.10.44    50008   2 | 32542 | 255
0.106   1   host    1917068287  tcp 192.168.1.104   9   90 | 32542 | 255
0.106   Done
0.120
Run Code Online (Sandbox Code Playgroud)