From 655096a77f65222529bd4b86fa6204768aa7cc50 Mon Sep 17 00:00:00 2001 From: Nicolas Meienberger Date: Tue, 6 Sep 2022 13:51:38 +0200 Subject: [PATCH] ci(dockerfile): revert to multi step build Image size was doubled with the new Dockerfile -> revert --- Dockerfile | 44 ++++++++++++++++++++++++++++++-------------- 1 file changed, 30 insertions(+), 14 deletions(-) diff --git a/Dockerfile b/Dockerfile index 427fb52b..858bb57c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,29 +1,45 @@ -FROM node:18 -ENV DEBIAN_FRONTEND=noninteractive +FROM node:18 AS build + +RUN npm install node-gyp -g + +WORKDIR /api +COPY ./packages/system-api/package.json /api/package.json +RUN npm i +# --- +WORKDIR /dashboard +COPY ./packages/dashboard/package.json /dashboard/package.json +RUN npm i + +WORKDIR /api +COPY ./packages/system-api /api +RUN npm run build +# --- +WORKDIR /dashboard +COPY ./packages/dashboard /dashboard +RUN npm run build + + +FROM alpine:3.16.0 as app WORKDIR / # Install dependencies -RUN apt update && apt install -y bash git g++ make -# Install docker-compose -RUN apt install -y docker-compose +RUN apk --no-cache add docker-compose nodejs npm bash g++ make git RUN npm install node-gyp -g WORKDIR /api COPY ./packages/system-api/package*.json /api/ -RUN npm install --omit=dev +RUN npm install --production WORKDIR /dashboard COPY ./packages/dashboard/package*.json /dashboard/ -RUN npm install --omit=dev +RUN npm install --production -WORKDIR /api +COPY --from=build /api/dist /api/dist COPY ./packages/system-api /api -RUN npm i -g @swc/cli @swc/core && npm run build && npm uninstall -g @swc/cli @swc/core -# --- -WORKDIR /dashboard -COPY ./packages/dashboard /dashboard -RUN npm i typescript @types/node && npm run build && npm uninstall typescript @types/node -WORKDIR / +COPY --from=build /dashboard/.next /dashboard/.next +COPY ./packages/dashboard /dashboard + +WORKDIR / \ No newline at end of file