From 769877041d9e1fa43c80ed4f67addb8e5bb09d5f Mon Sep 17 00:00:00 2001 From: valere Date: Fri, 7 Nov 2025 19:52:56 +0100 Subject: [PATCH] try fix pnpm symlink error on deploy 2 --- Dockerfile | 32 +++++++++++++++++++++++++++----- 1 file changed, 27 insertions(+), 5 deletions(-) diff --git a/Dockerfile b/Dockerfile index adf72d1..8a8b123 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,19 +1,41 @@ -# Stage 1: Build -FROM node:20 AS builder +# ========================================================== +# Stage 1 — Builder +# ========================================================== +FROM node:20-bookworm AS builder + +# On force une locale et on active un cache PNPM local +ENV LANG=C.UTF-8 +ENV PNPM_HOME=/usr/local/share/pnpm +ENV PATH=$PNPM_HOME:$PATH + WORKDIR /app +# Copie des fichiers nécessaires à l’installation COPY package.json pnpm-lock.yaml ./ -RUN npm install -g pnpm && pnpm install --frozen-lockfile +# Installation propre et isolée +RUN npm install -g pnpm@9 && pnpm install --frozen-lockfile + +# Copie du reste du projet (sans node_modules ni .output) COPY . . + +# Build Nuxt ou autre app JS RUN pnpm build -# Stage 2: Runtime + +# ========================================================== +# Stage 2 — Runner (production) +# ========================================================== FROM node:20-slim AS runner + +ENV NODE_ENV=production WORKDIR /app +# On ne garde que l’output final (pas de node_modules PNPM dans la prod) COPY --from=builder /app/.output ./.output -COPY package.json pnpm-lock.yaml ./ +COPY --from=builder /app/package.json ./ EXPOSE 3000 + +# Commande de démarrage (Nuxt 3 par défaut) CMD ["node", ".output/server/index.mjs"]