# ==========================================
# Stage 1: Build Frontend (Vue 3 + Vite)
# ==========================================
FROM node:18-alpine AS builder

WORKDIR /app

# 依赖缓存优化
COPY package*.json ./
RUN npm install

# 拷贝源码并编译打包
COPY . .
RUN npm run build

# ==========================================
# Stage 2: Production Nginx Server
# ==========================================
FROM nginx:alpine

# 拷贝打包产物至 Nginx 静态目录
COPY --from=builder /app/dist /usr/share/nginx/html

# 拷贝自定义 Nginx 配置文件
COPY nginx.conf /etc/nginx/conf.d/default.conf

EXPOSE 80

CMD ["nginx", "-g", "daemon off;"]
