
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
基于Alpine Linux构建的安全RTMP流媒体服务器镜像,在alfg/docker-nginx-rtmp基础上增强安全特性,集成Nginx、nginx-rtmp-module和FFmpeg,提供推流认证、自动SSL配置及多分辨率编码功能,适用于需要安全防护的HLS直播服务部署。
AUTH_KEY环境变量实现推流验证,OBS推流URL需包含?psk=AUTH_KEY参数DOMAIN_NAME后,若不存在SSL证书,自动通过Let's Encrypt生成CERT_PRIVATE_KEY和CERT_PUBLIC指定证书路径(位于/opt/certs或完整路径)ENABLE_720P_2628KBS:720P分辨率(2628Kbps)编码支持,默认"TRUE"ENABLE_480P_1128KBS:480P分辨率(1128Kbps)编码支持,默认"TRUE"ENABLE_360P_878KBS:360P分辨率(878Kbps)编码支持,默认"TRUE"ENABLE_240P_528KBS:240P分辨率(528Kbps)编码支持,默认"TRUE"ENABLE_240P_264KBS:240P分辨率(264Kbps)编码支持,默认"TRUE"直接拉取镜像运行
bashdocker pull ioexpert/secure-nginx-rtmp docker run -it -p 1935:1935 -p 8080:80 --rm ioexpert/secure-nginx-rtmp
从源码构建并运行
bashgit clone https://github.com/schreinerman/docker-secure-nginx-rtmp.git cd docker-secure-nginx-rtmp docker build -t nginx-secure-rtmp . docker run -it -p 1935:1935 -p 8080:80 --rm nginx-secure-rtmp
推流地址格式
rtmp://<服务器IP>:1935/stream/$STREAM_NAME?psk=AUTH_KEY
其中$STREAM_NAME为自定义流名称,AUTH_KEY需与容器环境变量一致。
通过DOMAIN_NAME环境变量启用自动SSL证书:
bashdocker run -it -p 1935:1935 -p 443:443 -e DOMAIN_NAME=yourdomain.com --rm ioexpert/secure-nginx-rtmp
| 环境变量 | 说明 | 默认值 |
|---|---|---|
AUTH_KEY | 推流认证密钥,用于OBS推流URL参数?psk=AUTH_KEY | 无 |
DOMAIN_NAME | 域名,用于Let's Encrypt自动SSL证书生成 | 无 |
CERT_PRIVATE_KEY | 私有证书名称(位于/opt/certs)或完整路径 | 无 |
CERT_PUBLIC | 公共证书名称(位于/opt/certs)或完整路径 | 无 |
ENABLE_720P_2628KBS | 启用720P分辨率(2628Kbps)编码 | "TRUE" |
ENABLE_480P_1128KBS | 启用480P分辨率(1128Kbps)编码 | "TRUE" |
ENABLE_360P_878KBS | 启用360P分辨率(878Kbps)编码 | "TRUE" |
ENABLE_240P_528KBS | 启用240P分辨率(528Kbps)编码 | "TRUE" |
ENABLE_240P_264KBS | 启用240P分辨率(264Kbps)编码 | "TRUE" |
挂载自定义配置文件:
bashdocker run -it -p 1935:1935 -p 8080:80 -v ./nginx.conf:/etc/nginx/nginx.conf.template --rm ioexpert/secure-nginx-rtmp
docker-compose配置示例
yamlversion: '3' services: rtmp-server: image: ioexpert/secure-nginx-rtmp ports: - "1935:1935" - "8080:80" environment: - AUTH_KEY=mysecretkey - DOMAIN_NAME=live.example.com - ENABLE_720P_2628KBS="TRUE" volumes: - ./nginx.conf:/etc/nginx/nginx.conf.template - ./certs:/opt/certs restart: always
rtmp://<服务器IP>:1935/stream$STREAM_NAME?psk=AUTH_KEY(例如:hello?psk=mysecretkey)HLS播放器(Safari、VLC等):
http://<服务器IP>:8080/live/$STREAM_NAME.m3u8
示例:http://localhost:8080/live/hello.m3u8
VideoJS播放器:访问https://hls-js.netlify.app/demo/?src=http%3A%2F%2Flocalhost%3A8080%2Flive%2Fhello.m3u8%E8%BE%93%E5%85%A5HLS%E5%9C%B0%E5%9D%80
FFplay:
bashffplay -fflags nobuffer rtmp://localhost:1935/stream/hello
bashffmpeg -buildconf ffmpeg version 4.3.1 Copyright (c) 2000-2020 the FFmpeg developers built with gcc 9.3.0 (Alpine 9.3.0) configuration: --prefix=/usr/local --enable-version3 --enable-gpl --enable-nonfree --enable-small --enable-libmp3lame --enable-libx264 --enable-libx265 --enable-libvpx --enable-libtheora --enable-libvorbis --enable-libopus --enable-libfdk-aac --enable-libass --enable-libwebp --enable-postproc --enable-avresample --enable-libfreetype --enable-openssl --disable-debug --disable-doc --disable-ffplay --extra-libs='-lpthread -lm' libavutil 56. 51.100 / 56. 51.100 libavcodec 58. 91.100 / 58. 91.100 libavformat 58. 45.100 / 58. 45.100 libavdevice 58. 10.100 / 58. 10.100 libavfilter 7. 85.100 / 7. 85.100 libavresample 4. 0. 0 / 4. 0. 0 libswscale 5. 7.100 / 5. 7.100 libswresample 3. 7.100 / 3. 7.100 libpostproc 55. 7.100 / 55. 7.100 configuration: --prefix=/usr/local --enable-version3 --enable-gpl --enable-nonfree --enable-small --enable-libmp3lame --enable-libx264 --enable-libx265 --enable-libvpx --enable-libtheora --enable-libvorbis --enable-libopus --enable-libfdk-aac --enable-libass --enable-libwebp --enable-postproc --enable-avresample --enable-libfreetype --enable-openssl --disable-debug --disable-doc --disable-ffplay --extra-libs='-lpthread -lm'
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务