# Dockerfile optimisé pour l'intégration dans 4NK_node FROM node:20-alpine AS builder WORKDIR /app # Installation des dépendances système RUN apk update && apk add --no-cache \ git \ build-base \ python3 \ make \ g++ # Copie des fichiers de dépendances COPY package*.json ./ # Installation des dépendances RUN npm ci --only=production # Copie du code source COPY . . # Build de l'application RUN npm run build # Image de production FROM nginx:alpine # Installation de Node.js pour les scripts de démarrage RUN apk update && apk add --no-cache nodejs npm # Copie des fichiers buildés COPY --from=builder /app/dist /usr/share/nginx/html COPY --from=builder /app/package*.json /app/ # Copie de la configuration nginx optimisée pour 4NK_node COPY nginx.4nk-node.conf /etc/nginx/conf.d/default.conf # Script de démarrage COPY start-4nk-node.sh /start-4nk-node.sh RUN chmod +x /start-4nk-node.sh # Exposition des ports EXPOSE 80 3003 # Variables d'environnement pour 4NK_node ENV SDK_RELAY_WS_URL=ws://sdk_relay_1:8090 ENV SDK_RELAY_HTTP_URL=http://sdk_relay_1:8091 ENV BITCOIN_RPC_URL=http://bitcoin:18443 ENV BLINDBIT_URL=http://blindbit:8000 # Point d'entrée CMD ["/start-4nk-node.sh"]