Dockerfile 552 B

12345678910111213141516171819202122232425262728
  1. FROM node:20-alpine AS builder
  2. WORKDIR /app
  3. # 复制依赖定义
  4. COPY package.json ./
  5. RUN npm ci
  6. # 复制源码并构建
  7. COPY . .
  8. ARG VITE_API_BASE_URL=/api/v1
  9. ARG VITE_WS_BASE_URL=/ws
  10. ENV VITE_API_BASE_URL=$VITE_API_BASE_URL
  11. ENV VITE_WS_BASE_URL=$VITE_WS_BASE_URL
  12. RUN npm run build
  13. # 使用 Nginx 提供静态文件
  14. FROM nginx:alpine
  15. # 复制构建产物
  16. COPY --from=builder /app/dist /usr/share/nginx/html
  17. # Nginx 配置:反向代理 API 到后端
  18. COPY nginx.conf /etc/nginx/conf.d/default.conf
  19. EXPOSE 80
  20. CMD ["nginx", "-g", "daemon off;"]