diff --git a/Dockerfile b/Dockerfile index ccf4f0b..73264c0 100644 --- a/Dockerfile +++ b/Dockerfile @@ -6,27 +6,29 @@ ENV PATH="$PNPM_HOME:$PATH" RUN corepack enable -COPY . /app +COPY package.json pnpm-lock.yaml /app/ WORKDIR /app +# Dependencies Stage for Production FROM base AS deps RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm install --prod --frozen-lockfile +# Build Stage FROM base AS build RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm install --frozen-lockfile +COPY . . + RUN pnpm run build +# Deploy Stage FROM base AS deploy -WORKDIR /app - -COPY --from=build /app/build ./build -COPY --from=build /app/node_modules ./node_modules -COPY --from=build /app/package.json ./package.json +COPY --from=deps /app/node_modules /app/node_modules +COPY --from=build /app/build /app/build # Run as non-root user USER node