diff options
Diffstat (limited to 'Dockerfile')
| -rw-r--r-- | Dockerfile | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/Dockerfile b/Dockerfile index f5e345225..75700e6f5 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,15 @@ ARG DOTNET_VERSION=2 + +# Download ffmpeg first to allow quicker rebuild of other layers +FROM alpine as ffmpeg +ARG FFMPEG_URL=https://www.johnvansickle.com/ffmpeg/old-releases/ffmpeg-4.0.3-64bit-static.tar.xz +RUN wget ${FFMPEG_URL} -O - | tar Jxf - \ + && mkdir ffmpeg-bin \ + && mv ffmpeg*/ffmpeg ffmpeg-bin \ + && mv ffmpeg*/ffprobe ffmpeg-bin + + FROM microsoft/dotnet:${DOTNET_VERSION}-sdk as builder WORKDIR /repo COPY . . @@ -7,12 +17,12 @@ RUN export DOTNET_CLI_TELEMETRY_OPTOUT=1 \ && dotnet clean \ && dotnet publish --configuration release --output /jellyfin + FROM microsoft/dotnet:${DOTNET_VERSION}-runtime COPY --from=builder /jellyfin /jellyfin +COPY --from=ffmpeg /ffmpeg-bin/* /usr/bin/ EXPOSE 8096 -RUN apt update \ - && apt install -y ffmpeg VOLUME /config /media -ENTRYPOINT if [ -n "$PUID$PGUID" ]; \ - then echo "PUID/PGID are deprecated. Use Docker user param." >&2; exit 1; \ - else dotnet /jellyfin/jellyfin.dll -programdata /config; fi +RUN apt update \ + && apt install -y libfontconfig1 # needed for Skia +ENTRYPOINT dotnet /jellyfin/jellyfin.dll -programdata /config |
