zoukankan      html  css  js  c++  java
  • mediasoup-demo公网安装部署

    一、概述

      1.环境描述

    1. CentOS 7.3
    2. Node v14.13.1
    3. gcc 8.3.1
    4. python 2.7
    5. npm 7.23.0
    6. cnpm 7.0.0

      2.mediasoup-demo:使用的最新版本的:

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

    git clone https://github.com/versatica/mediasoup-demo.git
    cd mediasoup-demo
    git checkout v3  ,//此处要切换到v3版本
    

      

    二、具体操作步骤

      1.mediasoup-demo的目录结构

      

      2.cd 到server目录并执行 npm/cnpm install

      3.在当前目录下执行:cp  config.example.js config.js ,ps:复制config.example.js为config.js,完成后结果如下图所示:

      

      4.执行vim config.js 对其内容进行更改该

        a.把ssl证书改成你自己的,并把端口改为443

        

        b.更改webRtcTransportOptions和plainTransportOptions的IP地址

        

        c.此时的config.js就更改完成了。

      5.将目录切换到mediasoup-demo的app目录

      

        a.执行npm install,等待执行完成

        b.使用vim 打开gulpfile.js并更改其默认端口为80(这个端口你可以随便设置,也可以不更改)

        

        c.找到 app->lib目录下的urlFactory.js,使用vim打开,并更改其端口号,因为再server中的端口改为了443,所以这里也需要改为443.

        

        d.使用gulp命令打包app,会在 server的public目录下生成相关的文件

        

        e.新建一个简单的Https服务,并把在mediasoup-demo ---->server------>public 目录下的内容发布到此服务上。server的代码如下: 

    'use strict'//使用严格的javascript语法
    
    const https = require('https');
    const express = require('express');
    const serve_index = require('serve-index');
    const fs = require('fs');
    
    
    const options={
            key: fs.readFileSync('/csr/你自己的.key'),
          cert: fs.readFileSync('/csr/你自己的.top.pem')
    };
    
    const app = express();
    //将public目录发布出去
    app.use(serve_index('./public'));
    app.use(express.static('./public'));
    
    const https_server = https.createServer(options,app);
    
    https_server.listen(80);
        
    

        f.npm start server.js 启动这个简单的服务区

        g.切换到mediasoup-demo --->server目录执行npm start server.js启动mediasoup-demo的服务

        h.在浏览器中输入https://ip地址:80/index.html 就可以查看具体的效果了

        i.效果图:因为我是台式电脑,所以这个截图是在手机上的展示效果。

        

    三、遇到的问题

      1.mediasoup-demo  server.js绑定端口失败:RTC:PortManager::Bind() | throwing MediaSoupError:port bind failed due to address not available

      

      解决办法:问题产生的原因是mediasoup-demo server目录下的config.js的webRtcTransportOptions和plainTransportOptions的IP地址没有配置对,把ip地址配置成0.0.0.0就没问题了。

      2.mediasoup-demo app目录下执行npm install时报错 :Error: Invalid tag name ">=^16.0.0": Tags may not have any characters that encodeURIComponent encodes

      

      解决办法:执行npm install --legacy-peer-deps

      

  • 相关阅读:
    记录C#-WPF线程中如何修改值
    记录MySql错误消息
    记录C#-WPF布局面板
    记录TortoiseGit=>https请求/ssh请求配置
    工具-Xmind常用快捷键/使用
    记录C#泛型
    记录console的使用
    记录Flex布局的属性
    Spark的Monitoring
    HBase安装学习
  • 原文地址:https://www.cnblogs.com/tony-yang-flutter/p/15263290.html
Copyright © 2011-2022 走看看