You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
19 lines
386 B
Docker
19 lines
386 B
Docker
FROM node:20-alpine as build-stage
|
|
|
|
WORKDIR /app
|
|
RUN corepack enable
|
|
|
|
COPY .npmrc package.json pnpm-lock.yaml ./
|
|
RUN --mount=type=cache,id=pnpm-store,target=/root/.pnpm-store \
|
|
pnpm install --frozen-lockfile
|
|
|
|
COPY . .
|
|
RUN pnpm build
|
|
|
|
FROM nginx:stable-alpine as production-stage
|
|
|
|
COPY --from=build-stage /app/dist /usr/share/nginx/html
|
|
EXPOSE 80
|
|
|
|
CMD ["nginx", "-g", "daemon off;"]
|