A simple easy to use all-in-one box for creating a miniature streaming RTMP server.

This project is on the Docker Hub @ dbindloss/nginx-rtmp-ffmpeg, and on GitHub @ DavidBindloss/nginx-rtmp-ffmpeg

If you have any issues, please raise them as a GitHub tracked issue. I don’t check the comments on Docker Hub.


The motivation behind this container was I simply wanted to see if it was possible to get a streaming capable container into a >50MB container. This image is currently sitting @ 20MB. It uses alpine as a base box.


First pull the docker image

docker pull dbindloss/nginx-rtmp-ffmpeg

Then to run

docker run dbindloss/nginx-rtmp-ffmpeg

The nginx config file is located at /etc/nginx/nginx.conf so if you want to override it with your own you can either write your own Dockerfile

FROM dbindloss/nginx-rtmp-ffmpeg

COPY nginx.conf /etc/nginx/nginx.conf

Or you can volume mount a new nginx configuration file from the command line

docker run -v nginx.conf:/etc/nginx/nginx.conf dbindloss/nginx-rtmp-ffmpeg

The basic nginx.conf doesn’t allow you to do all that much. Some other nginx config examples can be found in the examples directory.