最近以来一直基于 mediasoup 开发 rtc 相关产品,一直想基于 mediasoup 搭建自己的一套基础的 rtc 环境,用于自己练习 golang、rust 的开发、学习和测试,内网下搭建 mediasoup 比较简单,参照官网的文档一步步来很容易就能搞定,不过如果要在公网下搭建一套环境,相对来说略微麻烦些,需要云主机、nginx 配置、https 配置,通过这篇文章记录上述环境搭建的关键步骤。
以下操作均在 Ubuntu 18.04 Server 系统上操作。
1、准备云主机
公网环境的搭建还是需要一台拥有公网 IP 的主机的,当然如果你能薅公司的羊毛就更好了 。。本人的是阿里云主机 Ubuntu 系统 16.04 upgrade to 18.04,双11 时买的最便宜的机型,同时安装 ssh、 git、nodejs、npm,开启远程登录。
2、域名准备
通过浏览器打开音视频设备因为有安全方面的限制,不能通过 IP 进行访问,必须通过 https://domain 的 url 打开,所以我们还需要准备一个域名并解析到我们自己的公网 IP 地址,域名也可以通过阿里云进行购买,因为不需要 seo,所以选一个最便宜的后缀即可,我选择了 gobert.top,第一年只有 9 元,后面还需要域名备案,否则域名将被重定向到指定地址,所以域名需要提前准备。
首次域名备案相对来说比较麻烦,需要准备居住证(来沪外来人员)等证件,各种审核需要耗时两三天吧。
3、安装 mediasoup
λ ssh gobert@47.100.110.xxx
gobert@47.100.110.xxx's password:
Welcome to Ubuntu 18.04.1 LTS (GNU/Linux 4.15.0-38-generic x86_64)
Last login: Mon Apr 1 17:28:34 2019 from 116.236.177.xxx
$ mkdir develop
$ cd develop
$ git clone git@github.com:versatica/mediasoup-demo.git
后续 npm 的安装需参照 https://github.com/versatica/mediasoup-demo/ 文档进行。
4、nginx 配置
这一步默认域名购买、解析、备案已完成。
在线安装