1
0
Fork 0
mirror of https://github.com/plankanban/planka.git synced 2025-08-10 07:55:27 +02:00

update rebase.Dockerfile

This commit is contained in:
NavyStack 2023-12-19 12:29:09 +09:00
parent 13f1b26626
commit 016f9781ba

View file

@ -1,35 +1,25 @@
FROM node:18-bookworm as base FROM node:18-bookworm as base
RUN apt-get update \ RUN apt-get update && \
&& apt-get install -y \ apt-get install -y tini && \
tini && \
npm install pnpm --global npm install pnpm --global
WORKDIR /app
FROM base as server-dependencies FROM base as server-dependencies
COPY server/pnpm-lock.yaml . WORKDIR /planka/server
RUN pnpm fetch --prod COPY server .
RUN pnpm install -r --offline --prod RUN pnpm install --frozen-lockfile --prod
FROM base as client FROM base as client
COPY client/pnpm-lock.yaml . WORKDIR /planka/client
RUN pnpm fetch --prod
COPY client . COPY client .
RUN pnpm install -r --offline --prod RUN pnpm install --frozen-lockfile --prod
RUN DISABLE_ESLINT_PLUGIN=true pnpm run build RUN DISABLE_ESLINT_PLUGIN=true pnpm run build
FROM base AS intermediate FROM base AS intermediate
WORKDIR /app WORKDIR /app
COPY --from=server-dependencies /planka/server .
COPY --from=server-dependencies /app/node_modules node_modules COPY --from=client /planka/client/build public
COPY --from=server-dependencies /usr/bin/tini /usr/local/bin/tini COPY --from=client /planka/client/build/index.html views/index.ejs
COPY --from=client /app/build public
COPY --from=client /app/build/index.html views/index.ejs
COPY docker-entrypoint.sh . COPY docker-entrypoint.sh .
COPY server .
RUN mv .env.sample .env RUN mv .env.sample .env
FROM node:18-bookworm-slim AS final FROM node:18-bookworm-slim AS final
@ -42,7 +32,7 @@ USER $USER
WORKDIR /app WORKDIR /app
COPY --from=server-dependencies --chown=$USER:$USER /usr/bin/tini /usr/local/bin/tini COPY --from=intermediate --chown=$USER:$USER /usr/bin/tini /usr/local/bin/tini
COPY --from=intermediate --chown=$USER:$USER /app . COPY --from=intermediate --chown=$USER:$USER /app .
VOLUME /app/public/user-avatars VOLUME /app/public/user-avatars