mediasoup v3 dengan Docker

Saya mencoba menjalankan 2 contoh WebRTC (menggunakan mediasoup) di buruh pelabuhan

Saya ingin menjalankan dua server saat saya mengerjakan panggilan video di beberapa contoh!

Kesalahan Saya:

Pernahkah Anda melihat Kesalahan ini: createProducerTransport null Kesalahan: pengikatan port gagal karena alamat tidak tersedia [transport:udp, ip:'172.17.0.1', port:50517, percobaan:1/50000]

Saya pikir ini ada hubungannya dengan pengaturan jaringan buruh pelabuhan?

buruh pelabuhan-compose.yml

version: "3"
services:
  db:
    image: mysql
    restart: always
  app:
    image: app
    build: .
    ports:
      - "1440:443"
      - "2000-2020"
      - "80:8080"
    depends_on:
      - db 
  app2:
    image: app
    build: .
    ports:
      - "1441:443"
      - "2000-2020"
      - "81:8080"
    depends_on:
      - db 

Dockerfile

FROM node:12

WORKDIR /app
COPY . .

CMD npm start

person codemeasandwich    schedule 19.09.2020    source sumber
comment
Mungkin masalah GitHub ini dapat membantu Anda. Bisakah Anda mencoba mengedit config.js dan mengubah pengaturan webRtcTransport?   -  person flaxel    schedule 19.09.2020


Jawaban (3)


Katanya tidak bisa mengikat alamat jadi bisa jadi ip atau portnya yang menyebabkan masalah.

Ipnya sepertinya adalah ip dari instance buruh pelabuhan. meskipun instance buruh pelabuhan berada di dua mesin yang berbeda, itu harus menjadi ip server dan bukan instance buruh pelabuhan. (dalam pengaturan mediasoup)

Ada juga port koneksi rtcp yang harus dibuka di instance buruh pelabuhan. Biasanya juga ada di file konfigurasi mediasouo. biasanya berkisar beberapa ratus port yang perlu dibuka.

person Dirk V    schedule 19.09.2020

Anda harus mengatur port rtc min dan max Anda ke 2000 dan 2020 untuk tujuan pengujian. Saya rasa Anda juga tidak meneruskan port ini. Dalam penggunaan docker-compose 2000-2020:2000-2020 Pastikan juga untuk mengatur listenIps Anda dengan benar.

person Md Azharuddin    schedule 10.11.2020

Jika Anda menjalankan mediasoup di buruh pelabuhan, wadah tempat mediasoup diinstal harus dijalankan dalam host mode jaringan.

Ini dijelaskan di sini:

Bagaimana cara menggunakan jaringan host untuk penulisan buruh pelabuhan?

dan dokumen resmi

https://docs.docker.com/network/host/

Anda juga harus memperhatikan pengaturan konfigurasi mediasoup webRtcTransport.listenIps dan plainRtpTransport.listenIp mereka harus memberi tahu klien alamat IP mana yang didengarkan oleh server mediasoup Anda.

person brndusic    schedule 18.05.2021