1. 核心方案选择
推荐使用 MediaMTX(原rtsp-simple-server),因其轻量(仅5MB)、支持多协议(RTSP/RTMP/HLS/SRT)且配置简单。
镜像地址:docker.io/bluenviron/mediamtx
适用场景:监控推流、直播转发、低延迟传输(<0.5s)。
2. 部署步骤
2.1 拉取镜像
docker pull bluenviron/mediamtx:latest
2.2 创建配置文件(可选)
默认配置已支持基础推拉流,需自定义时创建 mediamtx.yml :
protocols: [tcp, udp] # 启用TCP/UDP传输 readTimeout: 10s # 超时设置 paths: cam1: # 自定义流名称 source: rtsp://admin:password@摄像头IP # 自动拉取外部流(可选)
2.3 启动容器
docker run -d \ --name rtsp-server \ -p 8554:8554 \ # RTSP默认端口 -p 1935:1935 \ # RTMP端口(可选) -p 8888:8888 \ # HTTP监控/API端口 -v /path/to/mediamtx.yml:/mediamtx.yml \ # 挂载自定义配置 bluenviron/mediamtx
3. 推流与拉流测试
推流工具:OBS、FFmpeg、IP摄像头
ffmpeg -re -i input.mp4 -c copy -f rtsp rtsp://服务器IP:8554/mystream
拉流地址:
RTSP:
rtsp://服务器IP:8554/mystreamRTMP:
rtmp://服务器IP:1935/mystreamHLS:
http://服务器IP:8888/mystream/index.m3u8