You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

27 lines
672 B

FROM node:20-slim AS base
ENV PNPM_HOME="/pnpm"
ENV PATH="$PNPM_HOME:$PATH"
RUN corepack enable
FROM base AS prod
WORKDIR /app
COPY pnpm-lock.yaml /app
RUN pnpm fetch --prod
WORKDIR /app/packages/web
COPY . /app
ENV CI=true
RUN pnpm install && pnpm build
####################################
FROM nginx:1.29.1-alpine-slim as web
RUN rm -r /usr/share/nginx/html \
&& mkdir -p /usr/share/nginx/html \
&& mkdir -p /etc/nginx/conf.d
WORKDIR /usr/share/nginx/html
COPY --from=prod /app/packages/web/dist ./
#ADD ./packages/web/dist .
COPY --from=prod /app/packages/web/infra/default.conf /etc/nginx/conf.d/default.conf
EXPOSE 8080
CMD ["nginx", "-g", "daemon off;"]