diff options
Diffstat (limited to 'docker/server')
| -rw-r--r-- | docker/server/Dockerfile | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/docker/server/Dockerfile b/docker/server/Dockerfile index ffb2c29..300251b 100644 --- a/docker/server/Dockerfile +++ b/docker/server/Dockerfile @@ -3,6 +3,8 @@ FROM node:22-slim AS builder WORKDIR /app +ENV PNPM_HOME="/pnpm" +ENV PATH="$PNPM_HOME:$PATH" # Enable corepack for pnpm RUN corepack enable && corepack prepare pnpm@10.23.0 --activate @@ -10,7 +12,8 @@ RUN corepack enable && corepack prepare pnpm@10.23.0 --activate COPY package.json pnpm-lock.yaml ./ # Install all dependencies (including devDependencies for build) -RUN pnpm install --frozen-lockfile +RUN --mount=type=cache,id=pnpm,target=/pnpm/store \ + pnpm install --frozen-lockfile # Copy source files COPY tsconfig.json esbuild.mjs ./ @@ -24,6 +27,8 @@ FROM node:22-slim AS production WORKDIR /app +ENV PNPM_HOME="/pnpm" +ENV PATH="$PNPM_HOME:$PATH" # Enable corepack for pnpm RUN corepack enable && corepack prepare pnpm@10.23.0 --activate @@ -31,7 +36,8 @@ RUN corepack enable && corepack prepare pnpm@10.23.0 --activate COPY package.json pnpm-lock.yaml ./ # Install production dependencies only -RUN pnpm install --frozen-lockfile --prod +RUN --mount=type=cache,id=pnpm,target=/pnpm/store \ + pnpm install --frozen-lockfile --prod # Copy built server from builder stage COPY --from=builder /app/dist/server ./dist/server |
