Dockerfile 691 B

12345678910111213141516171819202122232425
  1. # 如果需要用 cicd ,请设置环境变量:
  2. # variables:
  3. # DOCKER_BUILDKIT: 1
  4. FROM node:20-slim AS base
  5. ENV PNPM_HOME="/pnpm"
  6. ENV PATH="$PNPM_HOME:$PATH"
  7. RUN corepack enable
  8. COPY . /app
  9. WORKDIR /app
  10. FROM base AS prod-deps
  11. RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm install --prod
  12. FROM base AS build
  13. COPY --from=prod-deps /app/node_modules /app/node_modules
  14. RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm install && pnpm run build
  15. FROM nginx:alpine
  16. LABEL MAINTAINER="[email protected]"
  17. COPY --from=base /app/.docker-compose/nginx/conf.d/my.conf /etc/nginx/conf.d/my.conf
  18. COPY --from=build /app/dist /usr/share/nginx/html
  19. RUN ls -al /usr/share/nginx/html