centos 通过docker搭建 kurento-media-server 遇到的各种奇葩的大坑

kurento-media-server里的坑有n多,而且很多是极其初级的坑。忍不住吐槽一下,不知道是故意的还是他们的程序员刚毕业

1、首先kurento-media-server只能安装在ubuntu14 和16版本。

2、如果你想在centos里装,那就docker吧,而且必须centos7以上才行

3、安装好docker,那么精彩的地方来了,kurento-media-server 6.11有两个坑:

    1)第一个坑是居然无法启动:

error KurentoWebSocketTransport WebSocketTransport.cpp:130 WebSocketTransport() Error starting listen for websocket transport on port 8080: Underlying Transport Error

   原来论坛里已经有人遇到的,参考:https://github.com/Kurento/bugtracker/issues/301

    找论坛+源码,应该是ipv6的问题,配置文件kurento.conf.json禁掉ipv6,这样可以启动。

    但还会有第二个问题:

    2)kurento-media-server 6.11(包括以上)版本的问题是,WebRtcEndpoint.conf.ini这个文件会莫名其妙的被清空,只要一启动服务就会被清空,所以你如果想配什么turn/stun,对不起那是不可能的,而且这个问题无解,除非去看源代码

方法一:修改源码,用源码编译(没时间尝试)

方法二:试试其他版本,测试6.10版本,WebRtcEndpoint.conf.ini不会被清空,但还会报端口无法监听的错误,这个版本就算用1)里面的禁止ipv6也没有用。

解决办法:首先,把你的宿主机enable ipv6

然后,把docker enable ipv6 :修改配置文件/etc/docker/daemon.json,

{
    "ipv6": true,
    "fixed-cidr-v6": "2001:db8:1::/64"
}

然后重启docker, ifconfig看到docker分配了ipv6地址才行。

参考https://blog.csdn.net/bleatingsheep/article/details/80534153

 

分析:kurento-media-server6.10的bug是禁止ipv6不生效,查看kurento源码可看到连判断ipv6的分支都没有做,无语了。如果你的机器默认使能了ipv6,那么不会遇到这个问题

kurento-media-server6.11版本改掉了上面的这个bug,但是又出现了新问题,WebRtcEndpoint.conf.ini居然给清空了,无论你怎么配,只要重启服务,就会被清空,还没来得及看源码是怎么回事。

我的方法是docker 6.10版本,然后enable ipv6解决。

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值