FROM epicmorg/nginx:${NGINX_VERSION} LABEL maintainer="EpicMorg DevTeam, developer@epicm.org" ARG DEBIAN_FRONTEND=noninteractive ARG NGINX_RTMP_MODULE_VERSION=1.2.1 ################################################################## # sid sources list ################################################################## RUN rm -rfv /etc/apt/sources.list COPY sources.list.d/sources.sid.list /etc/apt/sources.list RUN apt update ################################################################## # installing utils ################################################################## RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections && \ apt-get update && \ apt-get install -y --allow-unauthenticated \ libpcre3-dev \ librtmp1 \ libtheora0 \ libvorbis-dev \ libmp3lame0 \ libx264-dev \ libx265-dev ################################################################## # stretch sources list + libvpx ################################################################## RUN rm -rfv /etc/apt/sources.list COPY sources.list.d/sources.stretch.list /etc/apt/sources.list RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections && \ apt-get update && \ apt-get install -y --allow-unauthenticated \ libvpx4 ################################################################## # buster sources list + libvpx ################################################################## RUN rm -rfv /etc/apt/sources.list COPY sources.list.d/sources.buster.list /etc/apt/sources.list RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections && \ apt-get update && \ apt-get install -y --allow-unauthenticated \ libvpx5 ################################################################## # sid sources list + libvpx ################################################################## RUN rm -rfv /etc/apt/sources.list COPY sources.list.d/sources.sid.list /etc/apt/sources.list RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections && \ apt-get update && \ apt-get install -y --allow-unauthenticated \ libvpx6 ################################################################## # installing deps for rtmp module ################################################################## RUN mkdir -p /usr/share/nginx/html \ /mnt/hls \ /mnt/dash \ /tmp/build && \ chown -R www-data:www-data /mnt/hls && \ chown -R www-data:www-data /mnt/dash && \ chmod -R 755 /mnt/hls && \ chmod -R 755 /mnt/dash && \ cd /tmp/build && \ wget https://github.com/arut/nginx-rtmp-module/archive/v${NGINX_RTMP_MODULE_VERSION}.tar.gz && \ tar -zxf v${NGINX_RTMP_MODULE_VERSION}.tar.gz && \ rm v${NGINX_RTMP_MODULE_VERSION}.tar.gz && \ cp /tmp/build/nginx-rtmp-module-${NGINX_RTMP_MODULE_VERSION}/stat.xsl /usr/share/nginx/html/stat.xsl && \ rm -rf /tmp/build ################################################################## # Forward logs to Docker ################################################################## RUN ln -sf /dev/stdout /var/log/nginx/access.log && \ ln -sf /dev/stderr /var/log/nginx/error.log ################################################################## # Copy nginx config file to container ################################################################## RUN rm -rfv /etc/nginx/nginx.conf \ /etc/nginx/sites-avalible/default COPY conf/nginx.conf /etc/nginx/nginx.conf ################################################################## # Copy html players to container ################################################################## COPY players /usr/share/nginx/html/players ################################################################## # cleaninig up ################################################################## RUN apt clean -y && \ apt autoclean -y && \ rm -rfv /var/lib/apt/lists/* && \ rm -rfv /var/cache/apt/archives/*.deb EXPOSE 1935 EXPOSE 8080 CMD ["nginx", "-g", "daemon off;"]