mediaSoup编译流程(ubuntu20.04不用翻墙,以及踩坑记录)

在Ubuntu20.04系统中,为了确保能从GitHub下载依赖,文章首先更新系统并安装Node.js16。接着,更改npm源至淘宝镜像。然后,克隆mediaSoup项目,切换到v3分支,并修改package.json。在安装过程中遇到问题,分别安装了node-gyp、make和g++。为解决HTTPS连接,创建了证书,并在配置文件中设置。最后,分别在server和app目录下启动程序,成功访问3000端口。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ubuntu20.04,一定要确保能够ping通github.com因为我们有很多依赖包需要从上面下载

首先安装node.js >=16版本

sudo apt-get update

curl -sL https://deb.nodesource.com/setup_16.x | sudo -E bash -
sudo apt-get install -y nodejs
 

为node换源

查看node源:sudo npm config get registry

设置淘宝镜像地址:sudo npm config set registry https://registry.npmmirror.com

下载mediaSoup代码:

git clone https://github.com/versatica/mediasoup-demo.git

cd mediasoup-demo

git checkout v3

更换server下和app下的packege.json的东西:

server

app:

 

修改完成后切入到server下执行npm install,如果失败就删除node_modle多执行几次:

第一次使用sudo npm install --legacy-peer-deps执行失败没有装node-gyp

 安装gyp:sudo npm install -g node-gyp

 

第二次执行npm install 失败

删除node_modules重新install

 第三次npm install 失败,没有装make

 安装make:apt install -y make

第四次install失败,没装g++

安装g++:apt install -y g++

第五次npm install成功:

由于mediaSoup是https连接需要秘钥:

在server下创建一个certs文件夹sudo mkdir certs,进入certs中

编写一个生成秘钥sh文件,并给它执行权限:

 内容:

#!/usr/bin/env bash
# When OpenSSL prompts you for the Common Name for each certificate, use different names.

# CA key
openssl genrsa -out ca.key 2048
# CA csr
openssl req -new -subj "/CN=ca" -key ca.key -out ca.csr
# CA crt
openssl x509 -req -in ca.csr -out ca.crt -signkey ca.key -days 3650

# server key
openssl genrsa -out server.key 2048
# server.csr
openssl req -new -subj "/CN=server" -key server.key -out server.csr
# server.crt
openssl x509 -req -in server.csr -out server.crt -CA ca.crt -CAkey ca.key -CAcreateserial -days 3650
# server.crt verify
openssl verify -CAfile ca.crt  server.crt

# client key
openssl genrsa -out client.key 2048
# client.csr
openssl req -new -subj "/CN=client" -key client.key -out client.csr
# client.crt
openssl x509 -req -in client.csr -out client.crt -CA ca.crt -CAkey ca.key -CAcreateserial -days 3650
# client.crt verify
openssl verify -CAfile ca.crt  client.crt

# md5 checksum
md5sum * > md5.txt

 保存执行:

sudo ./xxx.sh 

会在certs下生成秘钥

将crt和key的路径贴在config.js中,并将config中的ip换成我们的ip:

 

 保存启动:npm start:

server启动成功

新开一个窗口

cd到app路径下,执行npm install再执行npm start

由于server已经把坑全填了,app异常顺利:

 

浏览器访问3000端口:OK

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值