PointTrackApp / Dockerfile
2nzi's picture
first commit
b4f9490 verified
# Stage 1: Build
FROM node:20.18.0-alpine AS build-stage
WORKDIR /app
# Copier les fichiers de dépendances
COPY package*.json ./
# Installer les dépendances (sans --only=production=false qui est obsolète)
RUN npm ci
# Copier le code source
COPY . .
# Construire l'application
RUN npm run build
# Stage 2: Production
FROM node:20.18.0-alpine AS production-stage
# Installer serve globalement
RUN npm install -g serve
# Créer un utilisateur non-root pour la sécurité
USER node
WORKDIR /home/node
# Copier les fichiers buildés depuis le stage précédent
COPY --chown=node:node --from=build-stage /app/dist ./dist
# Exposer le port 7860 (requis par Hugging Face Spaces)
EXPOSE 7860
# Commande pour servir l'application
CMD ["serve", "-s", "dist", "-l", "7860"]