start putting together a dockerfile
is still missing font installation plus potentially more stuff
This commit is contained in:
parent
cae7b9b99b
commit
0de4f35311
1 changed files with 58 additions and 0 deletions
58
Dockerfile
Normal file
58
Dockerfile
Normal file
|
@ -0,0 +1,58 @@
|
|||
FROM alpine AS builder
|
||||
|
||||
RUN apk add --no-cache cargo
|
||||
|
||||
RUN mkdir /src
|
||||
COPY . /src
|
||||
WORKDIR /src
|
||||
|
||||
RUN cargo build --release --no-default-features
|
||||
|
||||
# ##############################################
|
||||
|
||||
FROM alpine
|
||||
|
||||
ARG ffmpeg_ver=7.0
|
||||
|
||||
RUN apk add --no-cache \
|
||||
dav1d fontconfig freetype harfbuzz librsvg libva lilv-libs opus svt-av1 x264-libs x265 \
|
||||
inkscape libgcc \
|
||||
&& apk add --no-cache --virtual .build-deps \
|
||||
build-base \
|
||||
dav1d-dev fontconfig-dev freetype-dev harfbuzz-dev librsvg-dev libva-dev lilv-dev opus-dev svt-av1-dev x264-dev x265-dev \
|
||||
&& wget -q https://ffmpeg.org/releases/ffmpeg-${ffmpeg_ver}.tar.bz2 \
|
||||
&& tar xfa ffmpeg-${ffmpeg_ver}.tar.bz2 \
|
||||
&& cd ffmpeg-${ffmpeg_ver} \
|
||||
&& ./configure \
|
||||
--prefix=/usr/local \
|
||||
--disable-asm \
|
||||
--disable-librtmp \
|
||||
--disable-lzma \
|
||||
--disable-static \
|
||||
--enable-avfilter \
|
||||
--enable-gpl \
|
||||
--enable-libdav1d \
|
||||
--enable-libfontconfig \
|
||||
--enable-libfreetype \
|
||||
--enable-libharfbuzz \
|
||||
--enable-libopus \
|
||||
--enable-librsvg \
|
||||
--enable-libsvtav1 \
|
||||
--enable-libx264 \
|
||||
--enable-libx265 \
|
||||
--enable-lto=auto \
|
||||
--enable-lv2 \
|
||||
--enable-pic \
|
||||
--enable-postproc \
|
||||
--enable-pthreads \
|
||||
--enable-shared \
|
||||
--enable-vaapi \
|
||||
--enable-version3 \
|
||||
--optflags="-O3" \
|
||||
&& make -j$(nproc) install \
|
||||
&& apk del --no-cache .build-deps \
|
||||
&& cd .. \
|
||||
&& rm -r ffmpeg-${ffmpeg_ver} ffmpeg-${ffmpeg_ver}.tar.bz2
|
||||
COPY --from=builder /src/target/release/render_video /usr/local/bin/render_video
|
||||
|
||||
ENTRYPOINT ["/usr/local/bin/render_video"]
|
Loading…
Reference in a new issue