32 lines
510 B
Docker
32 lines
510 B
Docker
FROM node:22 AS deps
|
|
|
|
WORKDIR /app
|
|
COPY ./package.json ./package-lock.json .
|
|
RUN npm ci --omit=dev
|
|
|
|
#####
|
|
|
|
FROM node:22 AS devdeps
|
|
|
|
WORKDIR /app
|
|
COPY ./package.json ./package-lock.json ./tsconfig.json .
|
|
RUN npm ci
|
|
|
|
#####
|
|
|
|
FROM node:22 AS build
|
|
|
|
WORKDIR /app
|
|
COPY . /app
|
|
COPY --from=devdeps /app/node_modules /app/node_modules
|
|
RUN npm run build
|
|
|
|
#####
|
|
|
|
FROM gcr.io/distroless/nodejs22-debian12
|
|
WORKDIR /app
|
|
COPY --from=build /app /app
|
|
COPY --from=deps /app/node_modules /app/node_modules
|
|
|
|
CMD ["dist/index.js"]
|