use ubuntu:18.04 baseimage
This commit is contained in:
		
							parent
							
								
									b10325c932
								
							
						
					
					
						commit
						b8c0101478
					
				
					 2 changed files with 29 additions and 51 deletions
				
			
		
							
								
								
									
										78
									
								
								Dockerfile
									
										
									
									
									
								
							
							
						
						
									
										78
									
								
								Dockerfile
									
										
									
									
									
								
							|  | @ -1,5 +1,5 @@ | ||||||
| FROM alpine:3.4 | FROM ubuntu:18.04  | ||||||
| LABEL author Alfred Gutierrez <alf.g.jr@gmail.com> | LABEL author Andreas Neue <an@dnix.de | ||||||
| 
 | 
 | ||||||
| ENV NGINX_VERSION 1.13.9 | ENV NGINX_VERSION 1.13.9 | ||||||
| ENV NGINX_RTMP_VERSION 1.2.1 | ENV NGINX_RTMP_VERSION 1.2.1 | ||||||
|  | @ -11,57 +11,20 @@ EXPOSE 80 | ||||||
| RUN mkdir -p /opt/data && mkdir /www | RUN mkdir -p /opt/data && mkdir /www | ||||||
| 
 | 
 | ||||||
| # Build dependencies. | # Build dependencies. | ||||||
| RUN	apk update && apk add	\ |  | ||||||
|   binutils \ |  | ||||||
|   binutils-libs \ |  | ||||||
|   build-base \ |  | ||||||
|   ca-certificates \ |  | ||||||
|   gcc \ |  | ||||||
|   libc-dev \ |  | ||||||
|   libgcc \ |  | ||||||
|   make \ |  | ||||||
|   musl-dev \ |  | ||||||
|   openssl \ |  | ||||||
|   openssl-dev \ |  | ||||||
|   pcre \ |  | ||||||
|   pcre-dev \ |  | ||||||
|   pkgconf \ |  | ||||||
|   pkgconfig \ |  | ||||||
|   zlib-dev |  | ||||||
| 
 | 
 | ||||||
| # Get nginx source. | # update and upgrade packages | ||||||
| RUN cd /tmp && \ | RUN apt-get update && apt-get upgrade -y && apt-get clean | ||||||
|   wget http://nginx.org/download/nginx-${NGINX_VERSION}.tar.gz && \ | RUN apt-get install -y build-essential wget htop vim nasm | ||||||
|   tar zxf nginx-${NGINX_VERSION}.tar.gz && \ | RUN apt-get install -y software-properties-common | ||||||
|   rm nginx-${NGINX_VERSION}.tar.gz | #RUN apt-get install -y ffmpeg | ||||||
|  | RUN apt-get install -y libpcre3-dev zlib1g-dev libssl-dev libass-dev \ | ||||||
|  |     libfdk-aac-dev libmp3lame-dev libopus-dev librtmp-dev libtheora-dev \ | ||||||
|  |     libvorbis-dev libvpx-dev libx264-dev libx265-dev libwebp-dev | ||||||
| 
 | 
 | ||||||
| # Get nginx-rtmp module. |  | ||||||
| RUN cd /tmp && \ |  | ||||||
|   wget https://github.com/arut/nginx-rtmp-module/archive/v${NGINX_RTMP_VERSION}.tar.gz && \ |  | ||||||
|   tar zxf v${NGINX_RTMP_VERSION}.tar.gz && rm v${NGINX_RTMP_VERSION}.tar.gz |  | ||||||
| 
 |  | ||||||
| # Compile nginx with nginx-rtmp module. |  | ||||||
| RUN cd /tmp/nginx-${NGINX_VERSION} && \ |  | ||||||
|   ./configure \ |  | ||||||
|   --prefix=/opt/nginx \ |  | ||||||
|   --add-module=/tmp/nginx-rtmp-module-${NGINX_RTMP_VERSION} \ |  | ||||||
|   --conf-path=/opt/nginx/nginx.conf \ |  | ||||||
|   --error-log-path=/opt/nginx/logs/error.log \ |  | ||||||
|   --http-log-path=/opt/nginx/logs/access.log \ |  | ||||||
|   --with-debug && \ |  | ||||||
|   cd /tmp/nginx-${NGINX_VERSION} && make && make install |  | ||||||
| 
 |  | ||||||
| # FFmpeg dependencies. |  | ||||||
| RUN apk add --update nasm yasm-dev lame-dev libogg-dev x264-dev libvpx-dev libvorbis-dev x265-dev freetype-dev libass-dev libwebp-dev rtmpdump-dev libtheora-dev opus-dev |  | ||||||
| RUN echo http://dl-cdn.alpinelinux.org/alpine/edge/testing >> /etc/apk/repositories |  | ||||||
| RUN apk add --update fdk-aac-dev |  | ||||||
| 
 |  | ||||||
| # Get FFmpeg source. |  | ||||||
| RUN cd /tmp/ && \ | RUN cd /tmp/ && \ | ||||||
|   wget http://ffmpeg.org/releases/ffmpeg-${FFMPEG_VERSION}.tar.gz && \ |   wget http://ffmpeg.org/releases/ffmpeg-${FFMPEG_VERSION}.tar.gz && \ | ||||||
|   tar zxf ffmpeg-${FFMPEG_VERSION}.tar.gz && rm ffmpeg-${FFMPEG_VERSION}.tar.gz |   tar zxf ffmpeg-${FFMPEG_VERSION}.tar.gz && rm ffmpeg-${FFMPEG_VERSION}.tar.gz | ||||||
| 
 | 
 | ||||||
| # Compile ffmpeg. |  | ||||||
| RUN cd /tmp/ffmpeg-${FFMPEG_VERSION} && \ | RUN cd /tmp/ffmpeg-${FFMPEG_VERSION} && \ | ||||||
|   ./configure \ |   ./configure \ | ||||||
|   --enable-version3 \ |   --enable-version3 \ | ||||||
|  | @ -86,10 +49,25 @@ RUN cd /tmp/ffmpeg-${FFMPEG_VERSION} && \ | ||||||
|   --disable-debug && \ |   --disable-debug && \ | ||||||
|   make && make install && make distclean |   make && make install && make distclean | ||||||
| 
 | 
 | ||||||
| # Cleanup. | RUN cd /tmp && \ | ||||||
| RUN rm -rf /var/cache/* /tmp/* |   wget http://nginx.org/download/nginx-${NGINX_VERSION}.tar.gz && \ | ||||||
|  |   tar zxf nginx-${NGINX_VERSION}.tar.gz && \ | ||||||
|  |   rm nginx-${NGINX_VERSION}.tar.gz | ||||||
|  | 
 | ||||||
|  | RUN cd /tmp && \ | ||||||
|  |   wget https://github.com/arut/nginx-rtmp-module/archive/v${NGINX_RTMP_VERSION}.tar.gz && \ | ||||||
|  |   tar zxf v${NGINX_RTMP_VERSION}.tar.gz && rm v${NGINX_RTMP_VERSION}.tar.gz | ||||||
|  | 
 | ||||||
|  | RUN cd /tmp/nginx-${NGINX_VERSION} && \ | ||||||
|  |   ./configure \ | ||||||
|  |   --prefix=/opt/nginx \ | ||||||
|  |   --add-module=/tmp/nginx-rtmp-module-${NGINX_RTMP_VERSION} \ | ||||||
|  |   --conf-path=/opt/nginx/nginx.conf \ | ||||||
|  |   --error-log-path=/opt/nginx/logs/error.log \ | ||||||
|  |   --http-log-path=/opt/nginx/logs/access.log \ | ||||||
|  |   --with-debug && \ | ||||||
|  |   cd /tmp/nginx-${NGINX_VERSION} && make && make install | ||||||
| 
 | 
 | ||||||
| # Add NGINX config and static files. |  | ||||||
| ADD nginx.conf /opt/nginx/nginx.conf | ADD nginx.conf /opt/nginx/nginx.conf | ||||||
| ADD static /www/static | ADD static /www/static | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -14,7 +14,7 @@ rtmp { | ||||||
|         application stream { |         application stream { | ||||||
|             live on; |             live on; | ||||||
| 
 | 
 | ||||||
|             exec ffmpeg -i rtmp://localhost:1935/stream/$name |             exec /usr/local/bin/ffmpeg -i rtmp://localhost:1935/stream/$name | ||||||
|               -c:a libfdk_aac -b:a 128k -c:v libx264 -b:v 2500k -f flv -g 30 -r 30 -s 1280x720 -preset superfast -profile:v baseline rtmp://localhost:1935/hls/$name_720p2628kbs |               -c:a libfdk_aac -b:a 128k -c:v libx264 -b:v 2500k -f flv -g 30 -r 30 -s 1280x720 -preset superfast -profile:v baseline rtmp://localhost:1935/hls/$name_720p2628kbs | ||||||
|               -c:a libfdk_aac -b:a 128k -c:v libx264 -b:v 1000k -f flv -g 30 -r 30 -s 854x480 -preset superfast -profile:v baseline rtmp://localhost:1935/hls/$name_480p1128kbs |               -c:a libfdk_aac -b:a 128k -c:v libx264 -b:v 1000k -f flv -g 30 -r 30 -s 854x480 -preset superfast -profile:v baseline rtmp://localhost:1935/hls/$name_480p1128kbs | ||||||
|               -c:a libfdk_aac -b:a 128k -c:v libx264 -b:v 750k -f flv -g 30 -r 30 -s 640x360 -preset superfast -profile:v baseline rtmp://localhost:1935/hls/$name_360p878kbs |               -c:a libfdk_aac -b:a 128k -c:v libx264 -b:v 750k -f flv -g 30 -r 30 -s 640x360 -preset superfast -profile:v baseline rtmp://localhost:1935/hls/$name_360p878kbs | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue