From 6e5b7cdd16f7dfcf7709efcf8a824147e33429b0 Mon Sep 17 00:00:00 2001
From: Steffen Schulze <steffen.schulze@t-systems.com>
Date: Fri, 1 Mar 2024 13:23:42 +0000
Subject: [PATCH] Update Dockerfile

---
 Dockerfile | 40 ++++++++++++++++++----------------------
 1 file changed, 18 insertions(+), 22 deletions(-)

diff --git a/Dockerfile b/Dockerfile
index fe0d803..a8091f6 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -20,25 +20,21 @@ RUN pnpm install --frozen-lockfile
 # Build shared
 FROM base AS build-shared
 
-COPY apps/shared ./apps/shared/
-COPY --from=dependencies  package.json ./
-COPY --from=dependencies  pnpm-lock.yaml ./
-COPY --from=dependencies  pnpm-workspace.yaml ./
-COPY --from=dependencies  tsconfig*.json ./ 
-COPY --from=dependencies  .swcrc ./ 
-COPY --from=dependencies  node_modules ./node_modules/
-COPY --from=dependencies  apps/shared/node_modules ./apps/shared/node_modules/
-COPY --from=dependencies  patches ./patches/
+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 ./
+COPY --from=dependencies ${APP_HOME}/node_modules ./node_modules
+COPY --from=dependencies ${APP_HOME}/apps/shared/node_modules ./apps/shared/node_modules
+COPY --from=dependencies ${APP_HOME}/patches ./patches
 RUN pnpm --filter shared build
 
 # Build DevTools
 FROM base AS build-devtools
 
 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}/devtools/node_modules ./devtools/node_modules/
-COPY --from=dependencies ${APP_HOME}/patches ./patches/
-COPY --from=build-shared ${APP_HOME}/apps/shared ./apps/shared/
+COPY --from=dependencies ${APP_HOME}/node_modules ./node_modules
+COPY --from=dependencies ${APP_HOME}/devtools/node_modules ./devtools/node_modules
+COPY --from=dependencies ${APP_HOME}/patches ./patches
+COPY --from=build-shared ${APP_HOME}/apps/shared ./apps/shared
 COPY devtools ./devtools
 RUN pnpm --filter devtools build && pnpm --filter devtools --prod deploy build
 
@@ -52,9 +48,9 @@ ENV NODE_ENV=${NODE_ENV}
 WORKDIR ${APP_HOME}
 CMD ["node", "dist/server.js"]
 
-COPY --from=build-devtools --chown=node:node ${APP_HOME}/build/dist ./dist/
-COPY --from=build-devtools --chown=node:node ${APP_HOME}/build/node_modules ./node_modules/
-COPY --from=build-devtools --chown=node:node ${APP_HOME}/build/package.json ./
+COPY --from=build-devtools --chown=node:node ${APP_HOME}/build/dist ./dist
+COPY --from=build-devtools --chown=node:node ${APP_HOME}/build/node_modules ./node_modules
+COPY --from=build-devtools --chown=node:node ${APP_HOME}/build/package.json .
 
 USER node
 
@@ -62,9 +58,9 @@ USER node
 FROM base 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/
-COPY --from=build-shared ${APP_HOME}/apps/shared ./apps/shared/
+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
 
@@ -78,9 +74,9 @@ ENV NODE_ENV=${NODE_ENV}
 WORKDIR ${APP_HOME}
 CMD ["node", "dist/main.js"]
 
-COPY --from=build-service --chown=node:node ${APP_HOME}/build/dist ./dist/
-COPY --from=build-service --chown=node:node ${APP_HOME}/build/node_modules ./node_modules/
-COPY --from=build-service --chown=node:node ${APP_HOME}/build/package.json ./
+COPY --from=build-service --chown=node:node ${APP_HOME}/build/dist ./dist
+COPY --from=build-service --chown=node:node ${APP_HOME}/build/node_modules ./node_modules
+COPY --from=build-service --chown=node:node ${APP_HOME}/build/package.json .
 
 # Cut unnecessary stuff from package.json. Only leave name, version, description and module type
 RUN node -e "\
-- 
GitLab