Skip to content

docker创建rtmp镜像.md

dockerfile文件

dockerfile
FROM centos
RUN curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-8.repo && \
    sed -i -e"s|mirrors.cloud.aliyuncs.com|mirrors.aliyun.com|g " /etc/yum.repos.d/CentOS-* && \
    sed -i -e "s|releasever|releasever-stream|g" /etc/yum.repos.d/CentOS-* && \
    yum clean all && yum makecache 
RUN yum -y install wget \
    gcc \
    make \
    epel-release \
    pcre \
    pcre-devel \
    zlib \
    zlib-devel \
    openssl \
    openssl-devel \
    git 
RUN wget https://nginx.org/download/nginx-1.26.0.tar.gz && \
    tar -zxvf nginx-1.26.0.tar.gz && \
    cd nginx-1.26.0 && \
    git clone https://gitee.com/zhong-liuyang/nginx-rtmp-module.git && \
    ls -la &&\
    ./configure --add-module=./nginx-rtmp-module && \
    make && make install && \
    ln -s /usr/local/nginx/sbin/nginx /usr/local/bin/nginx 
RUN echo "events {" > /usr/local/nginx/conf/nginx.conf && \
    echo "    worker_connections  1024;" >> /usr/local/nginx/conf/nginx.conf && \
    echo "}" >> /usr/local/nginx/conf/nginx.conf && \
    echo "rtmp {" >> /usr/local/nginx/conf/nginx.conf && \
    echo "    server {" >> /usr/local/nginx/conf/nginx.conf && \
    echo "        listen 1935;" >> /usr/local/nginx/conf/nginx.conf && \
    echo "        chunk_size 4096;" >> /usr/local/nginx/conf/nginx.conf && \
    echo "        application live {" >> /usr/local/nginx/conf/nginx.conf && \
    echo "            live on;" >> /usr/local/nginx/conf/nginx.conf && \
    echo "            record off;" >> /usr/local/nginx/conf/nginx.conf && \
    echo "        }" >> /usr/local/nginx/conf/nginx.conf && \
    echo "    }" >> /usr/local/nginx/conf/nginx.conf && \
    echo "}" >> /usr/local/nginx/conf/nginx.conf
RUN rm -rf nginx-1.26.0 nginx-1.26.0.tar.gz
EXPOSE 1935
VOLUME /usr/local/nginx/conf
CMD ["nginx","-g", "daemon off;"]