woj-ui-2/Dockerfile

31 lines
696 B
Docker

# Base Env
FROM docker.io/library/node:slim AS base
RUN --mount=type=cache,target=/var/cache/apt \
apt-get update \
&& apt-get install -y --no-install-recommends ca-certificates curl git gnupg \
&& rm -rf /var/lib/apt/lists/*
ENV PNPM_HOME="/pnpm"
ENV PATH="$PNPM_HOME:$PATH"
RUN corepack enable
WORKDIR /builder
# Builder
FROM base AS builder
COPY package.json /builder/package.json
COPY pnpm-lock.yaml /builder/pnpm-lock.yaml
RUN --mount=type=cache,id=pnpm,target=/pnpm/store \
pnpm install --frozen-lockfile
COPY . /builder
RUN pnpm install --frozen-lockfile
RUN pnpm run build
# Main
FROM docker.io/library/node:slim
WORKDIR /app
COPY --from=builder /builder/dist /app