diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 2db242e27ba035c1e2a6ee12f7d3d37025b42b3c..0517e7028212093c6116503fa3f833d347690c2f 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -28,7 +28,7 @@ docker-build: - !reference [.rules, rules] stage: build image: - name: gcr.io/kaniko-project/executor:v1.9.0-debug + name: gcr.io/kaniko-project/executor:debug entrypoint: [""] script: - echo "Project name is ${CI_PROJECT_NAME}" diff --git a/Dockerfile b/Dockerfile index dd05341939a9c268946e09585c01f59bef2ce0fa..109219592c78fd0cb7401a34e15db60085c058ee 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,22 +1,25 @@ -# Base -FROM node:20 AS base - +FROM node:20 AS dependencies +ARG APP_HOME=/home/node/app ARG SERVICE WORKDIR /home/node/app 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 /home/node/app/package.json /home/node/app/pnpm-lock.yaml /home/node/app/pnpm-workspace.yaml /home/node/app/tsconfig*.json /home/node/app/.swcrc ./ @@ -26,7 +29,14 @@ COPY --from=dependencies /home/node/app/patches ./patches RUN pnpm --filter shared build # Build service -FROM base AS build-service +FROM node:20 AS build-service + +ARG APP_HOME=/home/node/app +ARG SERVICE + +WORKDIR ${APP_HOME} + +RUN corepack enable COPY --from=dependencies /home/node/app/package.json /home/node/app/pnpm-lock.yaml /home/node/app/pnpm-workspace.yaml /home/node/app/tsconfig*.json /home/node/app/.swcrc ./ COPY --from=dependencies /home/node/app/node_modules ./node_modules