当前位置:   article > 正文

livekit 服务器部署

livekit

快速启动

  • 注意在livekit 中默认的配置文件中 没有开启turn服务,默认采用同网络下的webrtc 通信方案
    • 表现为,在同局域网下可以互联通话,在不同的网络中,无法正常通讯,例如在 移动数据下,无法正常连接
  • 需要再livekit 中开启内置的turn服务器(搞了好久,没有成功)
  • 自行搭建trun 服务器,通过livekit的config配置中,采用自己搭建的turn服务器 与sturn 服务
  1. [github](Release v1.6.1 · livekit/livekit · GitHub) 下载linux 编译好的二进制包 上传到 服务器livekit

  2. 运行服务

  • 将config.yaml 文件上传到livekit-server包的同级目录下

  • 运行服务

    ./livekit-server --config config.yaml
    
    • 1

配置

  1. livekit 内置turn服务(但是我运行后无法正常穿透)

  2. 另外搭建trun 与stun服务(采用coturn 运行)

  3. 打包后使用官方提供测试地址,测试是否正常运行

  4. 配置config文件,将turn与stun 采用搭建的配置

  5. 运行livekit 服务

  6. 使用ssl证书 通过wss协议与https协议访问livekit服务

  • 域名申请ssl证书

  • nginx 反向代理配置如下

location ^~ /
{
    proxy_pass http://127.0.0.1:7880;
    proxy_set_header Host 127.0.0.1;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header REMOTE-HOST $remote_addr;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection $connection_upgrade;
    proxy_http_version 1.1;
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

config.yaml配置文件

port: 7880
log_level: info
rtc:
  tcp_port: 7881
  port_range_start: 50000
  port_range_end: 60000
  use_external_ip: true
  use_ice_lite: false
  stun_servers:  # 配置stun服务器地址
    - stun 服务器公网ip:3478
  turn_servers:  # 配置 turn服务器地址
    - host: trun服务器公网ip
      port: 3479
      protocol: tls
      username: turn服务器用户密码
      credential: turn服务用户密码

redis:
  address: 127.0.0.1:6379
  password: redis密码
  sentinel_master_name: redis-key
keys:
# 随机生成秘钥对
  APIn4cwW: 0l0gaRnfsYVFZckgRSWLnnYcCd

# 房间设置
room:
  empty_timeout: 300
  max_participants: 0
  enabled_codecs:
    - mime: audio/opus
    - mime: video/vp8
  enable_remote_unmute: true
  max_metadata_size: 0
  playout_delay:
    enabled: true
    min: 100
    max: 2000
  sync_streams: true

signal_relay:
  retry_timeout: 30s
  min_retry_interval: 500ms
  max_retry_interval: 5s
  stream_buffer_size: 1000
psrpc:
  max_attempts: 3
  timeout: 500ms
  backoff: 500ms
  buffer_size: 1000
audio:
  active_level: 30
  min_percentile: 40
  update_interval: 500
  smooth_intervals: 4
  active_red_encoding: true
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/在线问答5/article/detail/775583
推荐阅读
相关标签
  

闽ICP备14008679号