jellyfin/Dockerfile

41 lines
1.2 KiB
Docker
Raw Normal View History

ARG DOTNET_VERSION=2.2
2019-09-02 12:13:08 -07:00
ARG FFMPEG_VERSION=latest
2018-12-09 23:41:43 -07:00
2019-09-12 15:24:09 -07:00
FROM node:alpine as web-builder
ARG JELLYFIN_WEB_VERSION=v10.4.0
RUN apk add curl \
&& curl -L https://github.com/jellyfin/jellyfin-web/archive/${JELLYFIN_WEB_VERSION}.tar.gz | tar zxf - \
&& cd jellyfin-web-* \
&& yarn install \
&& yarn build \
&& mv dist /dist
FROM mcr.microsoft.com/dotnet/core/sdk:${DOTNET_VERSION} as builder
2018-12-09 23:41:43 -07:00
WORKDIR /repo
COPY . .
ENV DOTNET_CLI_TELEMETRY_OPTOUT=1
RUN bash -c "source deployment/common.build.sh && \
build_jellyfin Jellyfin.Server Release linux-x64 /jellyfin"
2018-12-09 23:41:43 -07:00
FROM jellyfin/ffmpeg:${FFMPEG_VERSION} as ffmpeg
FROM mcr.microsoft.com/dotnet/core/runtime:${DOTNET_VERSION}
# libfontconfig1 is required for Skia
RUN apt-get update \
&& apt-get install --no-install-recommends --no-install-suggests -y \
libfontconfig1 \
&& apt-get clean autoclean \
&& apt-get autoremove \
2019-03-15 06:30:15 -07:00
&& rm -rf /var/lib/apt/lists/* \
&& mkdir -p /cache /config /media \
&& chmod 777 /cache /config /media
COPY --from=ffmpeg / /
COPY --from=builder /jellyfin /jellyfin
2019-09-12 15:24:09 -07:00
COPY --from=web-builder /dist /jellyfin/jellyfin-web/src
EXPOSE 8096
VOLUME /cache /config /media
ENTRYPOINT dotnet /jellyfin/jellyfin.dll \
--datadir /config \
--cachedir /cache \
--ffmpeg /usr/local/bin/ffmpeg