From a4041167db7960d1742b771364de08ba93b1f93c Mon Sep 17 00:00:00 2001 From: Claude Date: Wed, 12 Nov 2025 07:33:04 +0000 Subject: [PATCH] =?UTF-8?q?Fix:=20R=C3=A9solution=20de=20l'erreur=20npm=20?= =?UTF-8?q?ci=20dans=20le=20build=20Docker?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Deux problèmes ont été identifiés et corrigés : 1. Le fichier .dockerignore excluait package-lock.json, ce qui empêchait npm ci de fonctionner (npm ci nécessite package-lock.json) 2. L'image Alpine n'incluait pas les outils de build nécessaires pour compiler les modules natifs Node.js (bcrypt, sqlite3) Changements : - Suppression de package-lock.json du .dockerignore - Ajout de python3, make et g++ dans les deux stages du Dockerfile pour permettre la compilation des modules natifs --- .dockerignore | 2 +- Dockerfile | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/.dockerignore b/.dockerignore index 2b48345..e464f61 100644 --- a/.dockerignore +++ b/.dockerignore @@ -4,7 +4,7 @@ npm-debug.log* yarn-debug.log* yarn-error.log* yarn.lock -package-lock.json +# package-lock.json is needed for npm ci in Docker # Build output dist diff --git a/Dockerfile b/Dockerfile index 9e41a9f..e6c52cd 100644 --- a/Dockerfile +++ b/Dockerfile @@ -4,6 +4,9 @@ FROM node:20-alpine AS builder # Définir le répertoire de travail WORKDIR /app +# Installer les dépendances nécessaires pour compiler les modules natifs +RUN apk add --no-cache python3 make g++ + # Copier les fichiers de dépendances COPY package*.json ./ COPY tsconfig*.json ./ @@ -29,8 +32,8 @@ FROM node:20-alpine # Définir le répertoire de travail WORKDIR /app -# Installer SQLite -RUN apk add --no-cache sqlite +# Installer SQLite et les outils de build pour les modules natifs +RUN apk add --no-cache sqlite python3 make g++ # Copier les fichiers de dépendances COPY package*.json ./