chore(docker): cache pnpm store to avoid re-downloading deps
Source is copied before install because the root postinstall (nuxt prepare) needs it, so the dependency layer can't be cached by ordering alone. A BuildKit cache mount on pnpm's store keeps packages across builds instead.
This commit is contained in:
@@ -5,7 +5,11 @@ FROM node:24-alpine AS build
|
||||
RUN corepack enable
|
||||
WORKDIR /app
|
||||
COPY . .
|
||||
RUN pnpm install --frozen-lockfile
|
||||
# Cache the pnpm store across builds so dependencies aren't re-downloaded on
|
||||
# every source change. Source is copied first because the root `postinstall`
|
||||
# (nuxt prepare) needs it.
|
||||
RUN --mount=type=cache,id=pnpm-store,target=/root/.local/share/pnpm/store \
|
||||
pnpm install --frozen-lockfile
|
||||
RUN pnpm build
|
||||
|
||||
# --- Runtime stage: minimal image running the built server ---
|
||||
|
||||
Reference in New Issue
Block a user