环境CentOS 7 64位 VMWare12虚拟机(win10主机),安装好NodeJS 10.13(大于8.9就可以)

已按照GitHub说明拉下来代码,配置好Node环境,开始执行npm start,前面具体步骤不再说明,直接从遇见的错误开始

错误1、gcc版本过低

gcc默认4.8.5版本,需要升级

很多博客上的下载源码编译的太麻烦了,终于找到一个简单的,3步完成升级:https://cloud.tencent.com/developer/article/1471685

不过,这个好像不是永久性的,每使用都需要这么干一下 -_-,记到这里方便复制

sudo yum install centos-release-scl
sudo yum install devtoolset--gcc*
scl enable devtoolset- bash
which gcc
gcc --version

错误2、文件未找到

ll 看一下发现 mediasoup@3.2.5 目录没有下载下来

并且最有一步提示 clang-tools-r298696-linux.tgz下载时权限不够

所以直接 rm -rf 掉node_modeles目录

重新 sudo npm install

然后开始下载编译RTC相关的东西,耗时几分钟

后面有一次sudo npm忽然就找不到命令了,不知道什么操作导致的,原因就是sudo执行的是/usr/bin下的程序,普通命令执行的是环境变量下的程序,如果两者不一致,sudo就会报找不到

所以程序如果没有安装在/usr/bin下,一定要在下面建个对应的软连接(快捷方式),参考这里

编译结束,install 完成,耗时6分钟

然后再cd到app目录下install一下,这个倒是没什么错误

cd到server下npm start-->

错误3、日志级别属性未定义

也就是这个东西

该属性来自于config.js配置文件,打开config.js发现根本没有定义这些属性,而config.example.js中正确定义,可能是复制文件的时候手残没有切换分支,把V1分支的复制了过来,重新复制一份配置文件

重新npm start,服务启动成功

然后启动app,4个error

翻译一下,大体意思是说 “可能的竞争条件:可能基于过时的window.SHOW_INFO值重新分配了window.SHOW_INFO”(机翻)。

也就是说这几个参数设置错误,不过服务仍然启动完成

CentOS自带的火狐浏览器会自动打开该网址,然而。。。自动给我屏蔽了

不知道为什么设置浏览器配置后还是无法访问(其实点详细了解->添加例外就可以了,然而虚拟机没有摄像头和麦克风,所以看不到),所以使用Windows上浏览器访问,懒得配置Linux的端口就直接关闭防火墙,否则Windows访问不到3000端口

然而,,,,Windows Chrome也给我拦了,没有证书的假的https是无法被认可的(哈哈哈)

还好可以点击“高级”,“继续前往”,就可以成功访问了,允许打开摄像头麦克风,显示如下

错误4、IP地址未设置

明显又有错误,不过已经成功跑起来了( ̄_ ̄|||)

看服务端server打印信息发现room error

端口绑定失败

mediasoup:ERROR:worker[pid:] RTC::PortManager::Bind() | throwing MediaSoupError: port bind failed due to address not available [udp:1.2.3.4, attempt:] +3m
mediasoup:WARN:Channel[pid:] request failed [method:router.createWebRtcTransport, id:]: port bind failed due to address not available [udp:1.2.3.4, attempt:] +3m

是配置文件中webRtcTransportOptions相关参数没有改过来

改为自己服务器的IP,然后重启server,一切正常,就可以看到如下效果了

至此安装完成,当然这是本地访问,要部署在公网server上的话还需要按说明略作调整。

关于mediasoup一些很有用的例子:https://mediasoup.org/documentation/examples/

mediasoup-demo安装记录的更多相关文章

  1. 分布式监控系统Zabbix-3.0.3-完整安装记录(7)-使用percona监控MySQL

    前面已经介绍了分布式监控系统Zabbix-3.0.3-完整安装记录(2)-添加mysql监控,但是没有提供可以直接使用的Key,太过简陋,监控效果不佳.要想更加仔细的监控Mysql,业内同学们都会选择 ...

  2. 关于node.js和npm,cnpm的安装记录以及gulp自动构建工具的使用

    关于node.js和npm,cnpm的安装记录以及gulp自动构建工具的使用   工作环境:window下 在一切的最开始,安装node.js (中文站,更新比较慢http://nodejs.cn/) ...

  3. sourceinsight安装记录

    sourceinsight安装记录 此文章为本人使用sourceinsight一个星期之后的相关设置步骤记录和经验记录,以备以后查验,网上的相关资料都也较为完善,但是对于新手还是有一定困难的,所以在这 ...

  4. openerp安装记录及postgresql数据库问题解决

    ubuntu-14.04下openerp安装记录1.安装PostgreSQL 数据库    a.安装         sudo apt-get install postgresql    安装后ubu ...

  5. Matlab安装记录 - LED Control Activex控件安装

    Matlab安装记录-LED Control Activex控件安装 2013-12-01  22:06:36 最近在研究Matlab GUI技术,准备用于制作上位机程序:在Matlab GUI的技术 ...

  6. Arch Linux 安装记录

    Arch Linux 安装记录 基本上参考wiki上的新手指南,使用arch 2014.6.1 iso安装 设置网络 有线网络 Arch Linux 默认开启DHCP. 静态ip 首先关闭DHCP:s ...

  7. redis5.0.3单实例简单安装记录

    redis5.0.3单实例简单安装记录 日常需要测试使用,索性记录下来,免得临时又麻烦的找资料. yum -y install make gcc-c++ cmake bison-devel ncurs ...

  8. mysql5.7安装记录

    mysql安装记录 版本5.7 windows系统 一.缺少my.ini文件 [mysql]# 设置mysql客户端默认字符集default-character-set=utf8 [mysqld]#设 ...

  9. Liunx/RHEL6.5 Oracle11 安装记录

    1.创建用户组 groupadd oinstall #创建用户组oinstall groupadd dba #创建用户组dba useradd -g oinstall -g dba -m oracle ...

  10. zookeeper三节点集群安装记录

    以下是3个节点的zk安装记录. 下载 下载地址: http://mirrors.shu.edu.cn/apache/zookeeper/ cd /data/opt/zk wget http://mir ...

随机推荐

  1. Bootstrap Table踩坑——设置多级表头后只显示第一级表头问题解决办法

    今天设置了Bootstrap Table的复杂表头,设置了多级表头(两行列名),但是只能显示第一级表头(第一行的列名),第二级的表头被第一级的表头覆盖.但是我仿照其他网上的其他设置复杂表头例子都能正常 ...

  2. IntelliJ IDEA Ultimate 6.2 版本免费试用期过期后如何破解

    今天早上一打开IntelliJ IDEA时弹出“InteliJ IDEA License Activation”界面,需要激活新的license才可以使用.下面直接使用Activation code进 ...

  3. Invalid Native Object

    发现是因为没有addChild到父节点上引起的

  4. 菜得一P!

    什么时候才能改变粗心大意的坏毛病!太吃亏了...

  5. git本地仓库远程仓库地址更改

    git remote rm origingit remote add origin git@52.82.8.87:iot3.0-service/test.gitgit push -u origin - ...

  6. 143. 最大异或对(Trie树存整数+二进制)

    在给定的N个整数A1,A2……ANA1,A2……AN中选出两个进行xor(异或)运算,得到的结果最大是多少? 输入格式 第一行输入一个整数N. 第二行输入N个整数A1A1-ANAN. 输出格式 输出一 ...

  7. ubuntu 安装 lnmp 参考

    暂时参考 https://blog.csdn.net/weixin_36025897/article/details/81417458 https://www.jianshu.com/p/37cacd ...

  8. 0007 settings.py配置文件详解

    01 DEBUG调试配置 开发期设置为True,发布时设置为False 02 INSTALLED_APPS已安装的APP配置 INSTALLED_APPS = [ 'django.contrib.ad ...

  9. 【Python】简单计算器

    #python 3.7.1 print("operation codes are:") print("1 for multiply") print(" ...

  10. Hibernate:Hibernate缓存策略详解

    一:为什么使用Hibernate缓存: Hibernate是一个持久层框架,经常访问物理数据库. 为了降低应用程序访问物理数据库的频次,从而提高应用程序的性能. 缓存内的数据是对物理数据源的复制,应用 ...