重置完毕后用finalshell登陆华为云服务器,这里也可以用其他工具登陆比如xshell或者Putty都可以
登陆上去df -h
查看硬盘确实是40g,我这里是装完了docker与srs,但可以看到硬盘总大小是正常的40g
[root@hcss-ecs-496b ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
devtmpfs 909M 0 909M 0% /dev
tmpfs 919M 0 919M 0% /dev/shm
tmpfs 919M 8.6M 910M 1% /run
tmpfs 919M 0 919M 0% /sys/fs/cgroup
/dev/vda1 40G 3.0G 35G 8% /
overlay 40G 3.0G 35G 8% /var/lib/docker/overlay2/614c90f78c3233668e229b261f6c9a383207ac7dc501f521b0d6a77b903b4e1d/merged
tmpfs 184M 0 184M 0% /run/user/0
systemctl status firewalld
可以看到默认防火墙是关闭的,因此我们就不需要额外再去配置端口开放相关的配置[root@hcss-ecs-496b ~]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
Active: inactive (dead)
Docs: man:firewalld(1)
###装必须的一些工具
yum install -y yum-utils device-mapper-persistent-data lvm2
###配置yum的源地址
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
###查看docker有哪些版本
yum list docker-ce --showduplicates | sort -r
###默认安装最新版本的docker
yum install -y docker-ce
[root@hcss-ecs-496b ~]# systemctl start docker
[root@hcss-ecs-496b ~]# systemctl enable docker
[root@hcss-ecs-496b ~]# docker -v
Docker version 24.0.6, build ed223bc
docker run -it --name=srs -d -p 1935:1935 -p 8080:8080 --restart=always registry.cn-hangzhou.aliyuncs.com/ossrs/srs:5 ./objs/srs -c conf/hls.conf
[root@hcss-ecs-496b ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
855754b5c4c2 registry.cn-hangzhou.aliyuncs.com/ossrs/srs:5 "./objs/srs -c conf/…" 3 seconds ago Up 2 seconds 1985/tcp, 0.0.0.0:1935->1935/tcp, :::1935->1935/tcp, 5060/tcp, 8000/udp, 0.0.0.0:8080->8080/tcp, :::8080->8080/tcp, 9000/tcp, 10080/udp srs
相比较webrtc来说,配置少了很多,当然也可以配置https,srs也提供https.hls.conf,都可以使用,因为hls不像webrtc强制要求使用https,这次我们就不使用https来启动
查看docker ps 可以看到容器正常运行着,这就代表着srs服务已经部署完毕了
经过上面部署srs服务,这时候服务是已经部署完毕了,但是我们还没法通过外网进行访问,还需要对云耀云服务器L安全组的配置进行修改
进入安全组的配置页面
点击创建安全组
创建安全组
配置规则
选择添加规则
这里我们开放1935,8080即可,而webrtc则需要开放更多的端口
把我们刚才的华为云实例加入安全组
然后把默认的安全组移除实例
这样我们的实例就只受一个安全组保护,我们的端口也就开放成功了
进入srs播放器
我们使用FFMPEG进行推流
linux环境使用如下sh脚本进行推流
for((;;)); do \
./objs/ffmpeg/bin/ffmpeg -re -i ./doc/source.flv \
-c copy \
-f flv rtmp://192.168.1.170/live/live200; \
sleep 1; \
done
@echo off
:loop
.\ffmpeg.exe -re -i test.mp4 -vcodec h264 -c copy -f flv rtmp://192.168.1.170/live/live200
timeout /t 1
goto loop
然后进入SRS播放器播放HLS流
这里要注意的是播放地址的写法,是标准的播放HLS流的写法http://192.168.1.170:8080/live/live200.m3u8
可以很清楚的看到有进度条,而且随着时间推移,进度条会不断增大,而且画面流畅清晰
至此srs-hls就部署完毕了