﻿# Compile the React application into static files
FROM node:24-alpine AS builder
WORKDIR /app
COPY package*.json ./
RUN npm ci
COPY . .
RUN npm run build

# Serve the static files using a lightweight web server
FROM nginx:alpine
COPY --from=builder /app/dist /usr/share/nginx/html
# nginx.conf is a template. An env var that is not set stays in it as ${...}, and nginx then fails to start.
ENV AUTH_HOST="" API_HOST=""
COPY nginx.conf /etc/nginx/templates/default.conf.template
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]