diff --git a/Dockerfile b/Dockerfile index 577c445..2feef66 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,20 +1,19 @@ FROM node:20-slim AS base - ENV PNPM_HOME="/pnpm" ENV PATH="$PNPM_HOME:$PATH" RUN corepack enable - -FROM base AS prod - -COPY pnpm-lock.yaml /app +COPY . /app WORKDIR /app -RUN pnpm fetch --prod -COPY . /app +FROM base AS prod-deps +RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm install --prod --frozen-lockfile + +FROM base AS build +RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm install --frozen-lockfile RUN pnpm run build FROM base -COPY --from=prod /app/node_modules /app/node_modules -COPY --from=prod /app/dist /app/dist +COPY --from=prod-deps /app/node_modules /app/node_modules +COPY --from=build /app/dist /app/dist CMD [ "pnpm", "start:docker" ]