Dockerfile 642 B

1234567891011121314151617181920212223242526272829
  1. # https://stackoverflow.com/questions/53681522/share-variable-in-multi-stage-dockerfile-arg-before-from-not-substituted
  2. ARG PROJECT_DIR=/vue3-antdv-admin
  3. FROM node:18 as builder
  4. ARG PROJECT_DIR
  5. WORKDIR $PROJECT_DIR
  6. # 安装pnpm
  7. RUN npm install -g pnpm
  8. COPY . ./
  9. # 安装依赖
  10. # 若网络不通,可以使用淘宝源
  11. RUN pnpm config set registry https://registry.npmmirror.com
  12. RUN pnpm install
  13. # 构建项目
  14. ENV VITE_BASE_URL=/
  15. RUN pnpm build
  16. FROM nginx:alpine as production
  17. ARG PROJECT_DIR
  18. COPY --from=builder $PROJECT_DIR/dist/ /usr/share/nginx/html
  19. # COPY --from=builder $PROJECT_DIR/nginx.conf /etc/nginx/nginx.conf
  20. EXPOSE 80