# Dockerfile: construction des artefacts (dist/) sans serveur — Nginx géré par 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++ \ curl \ ca-certificates # Copie des fichiers de dépendances COPY package*.json ./ # Installation des dépendances (inclut les devDependencies nécessaires au build) RUN npm install # Copie du code source COPY . . # Préparation des dépendances wasm (pkg/sdk_client) ARG SDK_CLIENT_PKG_URL="" ARG SDK_CLIENT_PKG_TARBALL="" ARG SDK_CLIENT_PKG_BASE="https://git.4nkweb.com/4nk/ihm_client/raw/branch/docker-support/pkg" ENV SDK_CLIENT_PKG_URL=${SDK_CLIENT_PKG_URL} ENV SDK_CLIENT_PKG_TARBALL=${SDK_CLIENT_PKG_TARBALL} ENV SDK_CLIENT_PKG_BASE=${SDK_CLIENT_PKG_BASE} RUN chmod +x ./scripts/setup-remote-deps.sh && npm run build_wasm # Build de l'application RUN npm run build # Stage artefacts uniquement (pas de serveur ici) FROM alpine:3.19 AS dist WORKDIR /opt/ihm_client COPY --from=builder /app/dist ./dist COPY --from=builder /app/package*.json ./ # Conteneur neutre (aucun port exposé, artefacts montables dans 4NK_node) CMD ["sh", "-c", "echo 'dist prêt dans /opt/ihm_client/dist'; tail -f /dev/null"]