docker Nodejs搭建流媒体服务器--鉴权验证

docker Nodejs搭建流媒体服务器–鉴权验证

docker Nodejs搭建流媒体服务器–鉴权验证



前言

项目遇到直播推拉流相关服务,自己根据资料搭建了一个简易的推拉流服务。


一、所需环境

docker,docker-compose 可自行百度安装,示例较多,这里直接跳过。

二、配置

1.docker-compose.yml文件配置

代码如下(示例):

version: '3'
services:
    live-online:
        image: illuspas/node-media-server
        restart: always
        ports:
            - '1935:1935'
            - '8000:8000'
        networks:
            - front-gs
        privileged: true
        container_name: live-online

networks:
    front-gs:
        driver: bridge

创建完docker-compose.yml文件后,在同一目录下运行命令

docker-compose up -d    //启动项目
docker logs -f --tail=20 live-online   //查看日志

2.开启鉴权验证

运行以下命令进入容器内部:

docker exec -it live-online /bin/sh    //进入容器内部
vi app.js   //进入配置
const NodeMediaServer = require('./');

const config = {
  rtmp: {
    port: 1935,
    chunk_size: 60000,
    gop_cache: true,
    ping: 30,
    ping_timeout: 60,
        /*
    ssl: {
      port: 443,
      key: './privatekey.pem',
      cert: './certificate.pem',
    }
        */
  },
  http: {
    port: 8000,
    mediaroot: './media',
    webroot: './www',
    allow_origin: '*',
    api: true
  },
  https: {
    port: 8443,
    key: './privatekey.pem',
    cert: './certificate.pem',
  },
  auth: {
    api: true,
    api_user: 'admin',
    api_pass: 'admin',
    play: false,
    publish: true,  //true为开启推流鉴权
    secret: 'nodemedia2017privatekey'   //鉴权秘钥
  }
};

连接地址。

开启前推流地址:   rtmp://ip:1935/live/${streamName}
var streamName='haizhengzheng';
var expireData=parseInt((Date.now()+1000000)/1000)
var HashValue=md5(`/live/${streamName}-${expireData}-${appconfig.secret}`)
var sign=`${expireData}-${HashValue}`;
开启后推流地址:   `rtmp://ip:1935/live/${streamName}?sign=${sign}`

总结

以上就是今天要讲的内容,本文仅仅简单介绍了node.js推拉流的使用。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值