本文最后更新于 almost 2 years ago,文中所描述的信息可能已发生改变。
Dcoker Compose封装SRS-docker
1.Docker指令→制作Docker-compose
什么是docker-compose?
什么是SRS?
bash
docker run --rm -it -p 1935:1935 -p 1985:1985 -p 8080:8080 \
registry.cn-hangzhou.aliyuncs.com/ossrs/srs:4 ./objs/srs -c conf/docker.conf
- 可以看到,镜像采用了阿里的地址:
registry.cn-hangzhou.aliyuncs.com/ossrs/srs:4
- 端口开了三个:
1935,1985,8080
由此可以直接写出一份docker-compose.yaml
yaml
version: '3'
services:
ossrs:
image: registry.cn-hangzhou.aliyuncs.com/ossrs/srs:4
ports:
- 1985:1985
- 8080:8080
- 1935:1935
container_name: srs
restart: always
hostname: srs
- 进入root目录:cd /root
- 创建docker文件夹:mkdir docker
- 进入docker文件夹:cd docker/
- 创建srs文件夹:mkdir srs
- 进入srs文件夹:cd srs/
- 创建dockercompose文件:touch docker-compose.yaml
- 写入模板内容:vim docker-compose.yaml
- 点击i进入插入
- 在Xshell终端进行粘贴
- 点击Esc,输入
:wq
,保存退出
2.使用docker-compose来启用容器
- 进入srs的docker-compose模板文件目录下
- 在yaml文件目录下执行
docker-compose up -d
即可开启docker-compose - 输入
docker-compose ps
来查看容器模板是否正常启动bashNAME COMMAND SERVICE STATUS PORTS srs "./objs/srs -c conf/…" ossrs running 0.0.0.0:1935->1935/tcp, :::1935->1935/tcp, 0.0.0.0:1985->1985/tcp, :::1985->1985/tcp, 8000/udp, 0.0.0.0:8080->8080/tcp, :::8080->8080/tcp, 10080/udp
- 输入
docker ps
来查看容器是否运行bashCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES "docker-entrypoint.s…" 2 days ago Up 26 hours 3306/tcp nextcloud-db-1 2c030381a45b registry.cn-hangzhou.aliyuncs.com/ossrs/srs:4 "./objs/srs -c conf/…" 2 days ago Up 26 hours 0.0.0.0:1935->1935/tcp, :::1935->1935/tcp, 0.0.0.0:1985->1985/tcp, :::1985->1985/tcp, 8000/udp, 0.0.0.0:8080->8080/tcp, :::8080->8080/tcp, 10080/udp srs
3.进入Web界面进行推流和在线查看
$IP:8080
代表当前IP地址:指定的端口,$IP是会变动的
- 进入
http://$IP:8080/
,可以看到简洁的SRS描述:rtmp://$IP/live/livestream
- 打开OBS下载地址
- OBS中添加屏幕录像到场景的画布,在设置-推流中,服务器填写
rtmp://$IP:8080/live/livestream
,串流密钥填写stream
,应用退出,然后在主页开始推流 - 随后就可以通过
http://$IP:8080
→控制台
→视频流
→预览
来进行管理和观看直播了!