build: update Dockerfile

This commit is contained in:
Tim 2025-10-24 13:43:50 +02:00
parent b05f28cc54
commit 1b6f4d09d3

View file

@ -3,31 +3,39 @@
ARG NODE_VERSION=20-alpine
FROM node:$NODE_VERSION AS base
# Setup pnpm
ENV PNPM_HOME="/pnpm"
ENV PATH="$PNPM_HOME:$PATH"
RUN corepack enable
RUN apk add --no-cache git
# Meta
LABEL Description="Stremio Web" Vendor="Smart Code OOD" Version="1.0.0"
RUN mkdir -p /var/www/stremio-web
WORKDIR /var/www/stremio-web
# Install app dependencies
FROM base AS prebuild
# Setup app
FROM base AS app
RUN apk update && apk upgrade && \
apk add --no-cache git \
&& npm install -g pnpm
WORKDIR /var/www/stremio-web
COPY . .
ENV CI=true
RUN pnpm install
COPY pnpm-lock.yaml /var/www/stremio-web
RUN pnpm fetch --prod
COPY . /var/www/stremio-web
RUN pnpm run build
# Bundle app source
FROM base AS final
# Setup server
FROM base AS server
WORKDIR /var/www/stremio-web
COPY . .
COPY --from=prebuild /var/www/stremio-web/node_modules ./node_modules
COPY --from=prebuild /var/www/stremio-web/build ./build
RUN pnpm i express@4
# Finalize
FROM base
COPY http_server.js /var/www/stremio-web
COPY --from=server /var/www/stremio-web/node_modules /var/www/stremio-web/node_modules
COPY --from=app /var/www/stremio-web/build /var/www/stremio-web/build
EXPOSE 8080
CMD ["node", "http_server.js"]