From 2987d7ee279423c12973d99f8198f46a2980fce1 Mon Sep 17 00:00:00 2001 From: Steffen Schulze <steffen.schulze@t-systems.com> Date: Wed, 13 Mar 2024 19:54:58 +0000 Subject: [PATCH] kaniko fix --- Dockerfile | 31 ++++++++++++++++++++----------- 1 file changed, 20 insertions(+), 11 deletions(-) diff --git a/Dockerfile b/Dockerfile index 714fead..096f651 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,6 +1,4 @@ -# Base -FROM node:20 AS base - +FROM node:20 AS dependencies ARG APP_HOME=/home/node/app ARG SERVICE @@ -8,16 +6,20 @@ WORKDIR ${APP_HOME} RUN corepack enable -# Dependencies -FROM base AS dependencies - COPY package.json pnpm-lock.yaml pnpm-workspace.yaml tsconfig*.json .swcrc ./ COPY patches ./patches COPY apps/shared/package.json ./apps/shared/ RUN pnpm install --frozen-lockfile # Build shared -FROM base AS build-shared +FROM node:20 as build-shared + +ARG APP_HOME=/home/node/app +ARG SERVICE + +WORKDIR ${APP_HOME} + +RUN corepack enable COPY apps/shared ./apps/shared COPY --from=dependencies ${APP_HOME}/package.json ${APP_HOME}/pnpm-lock.yaml ${APP_HOME}/pnpm-workspace.yaml ${APP_HOME}/tsconfig*.json ${APP_HOME}/.swcrc ./ @@ -27,11 +29,18 @@ COPY --from=dependencies ${APP_HOME}/patches ./patches RUN pnpm --filter shared build # Build service -FROM base AS build-service +FROM node:20 AS build-service -COPY --from=dependencies ${APP_HOME}/package.json ${APP_HOME}/pnpm-lock.yaml ${APP_HOME}/pnpm-workspace.yaml ${APP_HOME}/tsconfig*.json ${APP_HOME}/.swcrc ./ -COPY --from=dependencies ${APP_HOME}/node_modules ./node_modules -COPY --from=dependencies ${APP_HOME}/patches ./patches +ARG APP_HOME=/home/node/app +ARG SERVICE + +WORKDIR ${APP_HOME} + +RUN corepack enable + +COPY --from=dependencies ${APP_HOME}/package.json ${APP_HOME}/pnpm-lock.yaml ${APP_HOME}/pnpm-workspace.yaml ${APP_HOME}/tsconfig*.json ${APP_HOME}/.swcrc ./ +COPY --from=dependencies ${APP_HOME}/node_modules ./node_modules +COPY --from=dependencies ${APP_HOME}/patches ./patches COPY --from=build-shared ${APP_HOME}/apps/shared ./apps/shared COPY apps/${SERVICE} ./apps/${SERVICE} RUN pnpm install --frozen-lockfile && pnpm --filter ${SERVICE} build && pnpm --filter ${SERVICE} --prod deploy build -- GitLab