Files
ketapk/Dockerfile
T
2026-08-01 17:45:42 +02:00

27 lines
742 B
Docker

# Image de base légère Node.js (version LTS)
FROM node:20-alpine
# Définition du répertoire de travail
WORKDIR /app
# Copie des manifests de dépendances en attribuant la propriété à l'utilisateur 'node'
COPY --chown=node:node backend/package*.json ./backend/
# Installation propre des dépendances de production
RUN cd backend && npm ci --omit=dev
# Copie de l'ensemble du projet avec la bonne propriété utilisateur
COPY --chown=node:node . .
# Passage à l'utilisateur non-privilégié 'node'
USER node
# Variables d'environnement
ENV NODE_ENV=production
ENV PORT=3000
# Exposition du port (3000 est > 1024, donc autorisé sans privilèges root)
EXPOSE 3000
# Démarrage du serveur Node.js
CMD ["node", "backend/server.js"]