# Multi-stage build for Vue 3 portfolio
# Build stage
FROM node:20-alpine AS build
WORKDIR /app

# Install dependencies
COPY package*.json ./
RUN npm ci

# Copy source and build
COPY . .
RUN npm run build

# Runtime stage (no nginx as requested)
FROM node:20-alpine AS runtime
WORKDIR /app
# Install a tiny static file server
RUN npm install -g serve@14
# Copy only built assets
COPY --from=build /app/dist ./dist
# No EXPOSE (internal port 80 via serve)
CMD ["serve", "-s", "dist", "-l", "80"]