Files
HarborForge.Frontend/Dockerfile

23 lines
525 B
Docker

# Build stage
FROM node:20-alpine AS build
WORKDIR /app
COPY package.json package-lock.json* ./
RUN npm install
# Set build args and env vars BEFORE copying source code
ARG VITE_WIZARD_PORT=18080
ARG VITE_API_BASE
ENV VITE_WIZARD_PORT=$VITE_WIZARD_PORT
ENV VITE_API_BASE=$VITE_API_BASE
COPY . .
RUN npm run build
# Production stage — lightweight static server, no nginx
FROM node:20-alpine
RUN npm install -g serve@14
WORKDIR /app
COPY --from=build /app/dist ./dist
EXPOSE 3000
CMD ["serve", "-s", "dist", "-l", "3000"]