Docker中创建nginx-rtmp流媒体服务器

准备工作

  • 需要安装好docker
  • 安装好镜像
bash 复制代码
docker pull alfg/nginx-rtmp
docker run -it -p 1935:1935 -p 8080:80 --rm alfg/nginx-rtmp  #创建临时容器,容器停止即删除
  • 安装好ffmpeg
bash 复制代码
sudo apt update
sudo apt install ffmpeg
ffmpeg -version

安装成功出现如下信息:

ffmpeg推流

采用循环推流模式

bash 复制代码
ffmpeg -re -stream_loop -1 -i ./5-2.mp4 -vcodec copy -acodec aac -ar 44100 -f flv rtmp://ip:1935/stream/example

参数解释如下:

  • ffmpeg: FFmpeg工具的启动命令。
  • re: 强制FFmpeg以输入文件的本来速度读取,即按照实际帧速率进行处理。这对于直播场景很重要。
  • stream_loop -1: 循环播放输入文件,-1表示无限循环。
  • i ./5-2.mp4: 指定输入文件为名为5-2.mp4的视频文件。
  • vcodec copy: 复制视频编解码器,保持原视频的编码方式。
  • acodec aac: 设置音频编解码器为AAC。
  • ar 44100: 设置音频采样率为44.1 kHz。
  • f flv: 指定输出格式为FLV。
  • rtmp://IP:1935/stream/example: 指定RTMP服务器的地址以及流的名称,流的名称为example

后台运行:

在局域网其他电脑打开效果

相关推荐
好好生活_8 小时前
【Docker基础学习】从VM虚拟机到Docker
运维·docker
孤岛悬城8 小时前
46 Docker资源管理
docker·容器·云计算
沙滩小绵羊8 小时前
Linux常见命令
linux·运维·服务器
cab59 小时前
如何解决由于 Docker 的大日志文件导致磁盘空间不足的问题
docker
iru9 小时前
nginx被报CVE-2025-1695漏洞,检查后反馈是误报
运维·nginx
天河归来9 小时前
本地windows环境升级dify到1.11.1版本
java·spring boot·docker
誰能久伴不乏9 小时前
epoll 学习踩坑:`fcntl` 设置非阻塞到底用 `F_SETFL` 还是 `F_SETFD`?
linux·服务器·网络·c++·tcp/ip
阿巴~阿巴~10 小时前
告别命令行:Navicat可视化操作数据库(附安装使用教程)
服务器·数据库·mysql·navicat·可视化操作数据库
TG:@yunlaoda360 云老大10 小时前
华为云国际站代理商跨境容灾是如何实现的?
服务器·数据库·华为云
么么...11 小时前
在 Ubuntu 上安装 Docker 并部署 MySQL 容器
linux·运维·经验分享·笔记·mysql·ubuntu·docker