FROM node:19-alpine WORKDIR /app # Installation des dépendances (INCLUDING dev dependencies for build) COPY package*.json ./ RUN npm install # Copie des fichiers source COPY src ./src COPY tsconfig.json ./ # Compilation TypeScript RUN npm run build # Nettoyage des dépendances de développement APRÈS la compilation RUN npm ci --only=production && npm cache clean --force # Création d'un utilisateur non-root RUN adduser -D appuser --uid 10000 && \ chown -R appuser /app USER appuser # Configuration du port et démarrage EXPOSE 8080 CMD ["npm", "start"]