From 03f32978c0d79ff30290924e1c6e8e0ba39eda96 Mon Sep 17 00:00:00 2001 From: Andrew Rabert Date: Thu, 12 Sep 2019 18:24:09 -0400 Subject: [PATCH] Docker - Build jellyfin-web --- Dockerfile | 15 ++++++++++----- Dockerfile.arm | 16 +++++++++++----- Dockerfile.arm64 | 16 +++++++++++----- 3 files changed, 32 insertions(+), 15 deletions(-) diff --git a/Dockerfile b/Dockerfile index ec64398b20..b9c6470590 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,6 +1,15 @@ ARG DOTNET_VERSION=2.2 ARG FFMPEG_VERSION=latest +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 WORKDIR /repo COPY . . @@ -21,11 +30,7 @@ RUN apt-get update \ && chmod 777 /cache /config /media COPY --from=ffmpeg / / COPY --from=builder /jellyfin /jellyfin - -ARG JELLYFIN_WEB_VERSION=v10.4.0 -RUN curl -L https://github.com/jellyfin/jellyfin-web/archive/${JELLYFIN_WEB_VERSION}.tar.gz | tar zxf - \ - && rm -rf /jellyfin/jellyfin-web \ - && mv jellyfin-web-* /jellyfin/jellyfin-web +COPY --from=web-builder /dist /jellyfin/jellyfin-web/src EXPOSE 8096 VOLUME /cache /config /media diff --git a/Dockerfile.arm b/Dockerfile.arm index 2b1c6bb62b..d06eeb561a 100644 --- a/Dockerfile.arm +++ b/Dockerfile.arm @@ -3,6 +3,16 @@ ARG DOTNET_VERSION=3.0 +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 WORKDIR /repo COPY . . @@ -25,11 +35,7 @@ RUN apt-get update \ && mkdir -p /cache /config /media \ && chmod 777 /cache /config /media COPY --from=builder /jellyfin /jellyfin - -ARG JELLYFIN_WEB_VERSION=v10.4.0 -RUN curl -L https://github.com/jellyfin/jellyfin-web/archive/${JELLYFIN_WEB_VERSION}.tar.gz | tar zxf - \ - && rm -rf /jellyfin/jellyfin-web \ - && mv jellyfin-web-* /jellyfin/jellyfin-web +COPY --from=web-builder /dist /jellyfin/jellyfin-web/src EXPOSE 8096 VOLUME /cache /config /media diff --git a/Dockerfile.arm64 b/Dockerfile.arm64 index 5ebc82ebc5..1c5de4ed0e 100644 --- a/Dockerfile.arm64 +++ b/Dockerfile.arm64 @@ -3,6 +3,16 @@ ARG DOTNET_VERSION=3.0 +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 WORKDIR /repo COPY . . @@ -25,11 +35,7 @@ RUN apt-get update \ && mkdir -p /cache /config /media \ && chmod 777 /cache /config /media COPY --from=builder /jellyfin /jellyfin - -ARG JELLYFIN_WEB_VERSION=v10.4.0 -RUN curl -L https://github.com/jellyfin/jellyfin-web/archive/${JELLYFIN_WEB_VERSION}.tar.gz | tar zxf - \ - && rm -rf /jellyfin/jellyfin-web \ - && mv jellyfin-web-* /jellyfin/jellyfin-web +COPY --from=web-builder /dist /jellyfin/jellyfin-web/src EXPOSE 8096 VOLUME /cache /config /media