From 061131b166324252e680cc57f6d261d0016a59e9 Mon Sep 17 00:00:00 2001 From: innotex Date: Thu, 5 Feb 2026 00:43:46 +0100 Subject: [PATCH] Fix: Add .npmrc config and improve npm install robustness --- .npmrc | 5 +++++ Dockerfile | 12 ++++++++---- 2 files changed, 13 insertions(+), 4 deletions(-) create mode 100644 .npmrc diff --git a/.npmrc b/.npmrc new file mode 100644 index 0000000..4156fea --- /dev/null +++ b/.npmrc @@ -0,0 +1,5 @@ +legacy-peer-deps=true +audit=false +fund=false +progress=false +omit=dev diff --git a/Dockerfile b/Dockerfile index 49145db..9dab037 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,13 +2,17 @@ FROM node:18-alpine WORKDIR /app +# Copy npm config first +COPY .npmrc ./ + # Copy package files COPY backend/package*.json ./ -# Install dependencies - bypass npm bugs -RUN npm ci --omit=dev || npm install --omit=dev || true && \ - npm install --save express express-session bcryptjs dotenv cors multer fs-extra && \ - if [ ! -d node_modules/express ]; then echo "ERROR: express not installed" && exit 1; fi +# Install dependencies with retry logic +RUN npm cache clean --force && \ + npm install --no-optional --legacy-peer-deps 2>&1 | tail -20 && \ + ls -la node_modules/express || npm install express && \ + test -d node_modules/express || (echo "FATAL: express not found" && exit 1) # Copy application code COPY backend/src ./src