40 lines
1.1 KiB
Docker
40 lines
1.1 KiB
Docker
# Utiliser une image Node.js légère
|
|
FROM node:20-alpine
|
|
|
|
WORKDIR /app
|
|
|
|
# Installation des dépendances système
|
|
RUN apk add --no-cache git
|
|
|
|
# Copie des fichiers de dépendances
|
|
COPY package.json package-lock.json* ./
|
|
|
|
# Installation des dépendances Node
|
|
# Utilisation de --ignore-scripts pour éviter l'erreur husky
|
|
RUN npm install --legacy-peer-deps --ignore-scripts
|
|
|
|
# Installation des dépendances nécessaires au build
|
|
RUN npm install gray-matter glob
|
|
|
|
# Copie du reste du projet
|
|
COPY . .
|
|
|
|
# Variables d'environnement pour les builds internes de aoe_technology_radar
|
|
# HUSKY=0 désactive les hooks husky inexistant dans l'image
|
|
# NODE_PATH permet aux scripts exécutés depuis /.techradar d'accéder aux dépendances racine
|
|
ENV HUSKY=0
|
|
ENV HUSKY_SKIP_INSTALL=1
|
|
ENV NODE_PATH=/app/node_modules
|
|
|
|
# --- CONFIGURATION BUSINESS ---
|
|
# Application de la logique Business (remplacement de la config et des données)
|
|
RUN cp radar-business/config-business.json config.json && \
|
|
rm -rf radar/* && \
|
|
cp -r radar-business/2025-01-15/* radar/
|
|
|
|
# Exposition du port interne
|
|
EXPOSE 3000
|
|
|
|
# Démarrage du serveur
|
|
CMD ["npm", "run", "serve", "--", "--port", "3000"]
|