# --- Build stage ---------------------------------------------------------------
FROM node:22-alpine AS build
WORKDIR /app

COPY package*.json ./
RUN npm ci

COPY . .

# Base path baked at build time. Default '/' (dedicated domain).
# For a subpath deploy: docker build --build-arg VITE_BASE=/practice/ .
ARG VITE_BASE=/
ENV VITE_BASE=$VITE_BASE
RUN npm run build

# --- Serve stage ---------------------------------------------------------------
FROM nginx:alpine
COPY --from=build /app/dist /usr/share/nginx/html
COPY nginx/default.conf /etc/nginx/conf.d/default.conf
EXPOSE 80
