ubuntu环境下 mediasoup-demo 部署流程
应用环境
- ubuntu1~18.04.1
- node.js v12.20.1
- mediasoup-demo v3
- npm 6.14.10
- gcc version 7.5.0
\quad 系统搭建过程中,node的版本需要在10.0以上(不是只会警告,不知道会不会影响最后的实现),为安装最新版本的node,下载前需要先输入如下命令
curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -
- 之后在输入该命令安装node,安装时最好切换为root用户,防止会出现的权限受限错误
apt-get install -y nodejs
安装过程
下载demo
git clone https://github.com/versatica/mediasoup-demo.git
cd mediasoup-demo/server/
git check v3
- 使用
git check v3
检查下载的demo版本是否在3.0以上 - 更换npm源
npm --registry https://registry.npm.taobao.org
修改config文件
cp config.example.js config.js
vim config.js
- 对应文件内容
27 {
28 cert : `${__dirname}/certs/a_com.crt`,
29 key : `${__dirname}/certs/a_com_nopass.key`
30 }
- 添加自己生成的https密钥
- 程序段中的行号对应该文件行号
添加https密钥
cd mediasoup-demo/server/certs
openssl genrsa -des3 -out a_com.key 1024
openssl req -new -key a_com.key -out a_com.csr
openssl rsa -in a_com.key -out a_com_nopass.key
openssl x509 -req -days 365 -in a_com.csr -signkey a_com.key -out a_com.crt
- 执行
openssl genrsa -des3 -out a_com.key 1024
时,需要输入密码,由此生成的.key
会有a_com.key
和a_com_nopass.key
两种,程序配置使用的是a_com_nopass.key
写入服务器内网IP和外网IP
## 获取内网IP
ifconfig
## 获取外网IP
curl ifconfig.me
- 对应文件内容
124 listenIps :
125 [
126 {
127 ip : '***.***.**.***', // 内网地址
128 announcedIp : '***.***.**.***' // 外网地址
129 }
130 ],
...
144 listenIp :
145 {
146 ip : '***.***.**.***', // 同上
147 announcedIp : '***.***.**.***'
148 },
...
npm 安装
cd mediasoup-demo/server
npm install
cd mediasoup-demo/app
npm install
运行demo
cd mediasoup-demo/server
npm start
- 启动server后终端运行结果
cd mediasoup-demo/app
npm start
- 启动app运行结果