背景
作为前端er整个过程还是需要清楚了解的
需要准备的
- 一台服务器
- nginx知识
- 服务端语言(本文选择了node.js)
- JavaScript(WebRTC)
turn/stun 服务器搭建
选择start 较多的coturn
安装步骤
基本是Linux操作指令了
- 安装
mkdir mycoturn
cd mycoturn
git clone https://github.com/coturn/coturn.git
cd coturn
./configure
make
make install
- 检查
**which turnserver**
- 配置文件
listening-device=eth0
relay-device=eth0
relay-ip=内网地址
listening-ip=内网地址
external-ip=外网地址
listening-port=3478
tls-listening-port=5349
user=name:password
pidfile="/var/run/turnserver.pid"
no-cli
lt-cred-mech
cert=/etc/turn_server_cert.pem
pkey=/etc/turn_server_pkey.pem
cli-password=password
//配置可用
- cert和pkey配置的自签名证书用Openssl命令生成,生成的两个文件在/etc/目录下
openssl req -x509 -newkey rsa:2048 -keyout /etc/turn_server_pkey.pem -out /etc/turn_server_cert.pem -days 99999 -nodes
- 启动
turnserver -L ip -o -a -b /etc/turnuserdb.conf -f -r -suzhou
// or
turnserver -o -a -f -r suzhou
- 防火墙设置
firewall-cmd --add-port=3478/tcp
- 测试
如图则表示成功
信令服务器
做一个数据信息的分发,类似于房间的概念,使用的node.js
部署
写完的服务需要在nginx上部署
location /wss {
proxy_pass http://127.0.0.1:3000;
proxy_read_timeout 60s;
proxy_set_header Host $host;
proxy_set_header X-Real_IP $remote_addr;
proxy_set_header X-Forwarded-for $remote_addr;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
}
在nginx中使用forever start server.js启动wss服务
小结
部署完成后就是webrtc的代码了,可以参考之前文章学习了解webrtc