@@ -9,7 +9,7 @@ FROM ${ARG_IMAGE_FROM} AS nodeapp-base
99WORKDIR /home/node/app
1010
1111# -----------------------------------------------------------------------------
12- # Stage 2: Nodeapp build
12+ # Stage 2: Nodeapp base
1313# -----------------------------------------------------------------------------
1414FROM nodeapp-base AS nodeapp-build
1515
@@ -23,42 +23,7 @@ RUN --mount=type=cache,target=/home/node/.npm,sharing=locked \
2323 npm prune --omit=dev
2424
2525# -----------------------------------------------------------------------------
26- # TARGET 1: Nodeapp dev image
27- # -----------------------------------------------------------------------------
28- FROM nodeapp-base AS nodeapp-dev
29-
30- ARG NODE_ENV=development
31- ARG NODE_UID=1000
32- ENV NODE_UID=$NODE_UID
33- ENV NODE_ENV=$NODE_ENV
34- ENV NPM_CONFIG_PREFIX=/home/node/app/.npm
35- ENV NPM_CONFIG_CACHE=/home/node/app/.npm
36-
37- RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \
38- --mount=type=cache,target=/var/lib/apt,sharing=locked \
39- set -ex && \
40- apt-get update && \
41- apt-get install --no-install-recommends -y \
42- # Alphabetical order per best practice
43- # (To make finding packages in lists easier and to help avoid duplicates)
44- git \
45- curl \
46- make \
47- tar \
48- unzip \
49- zip
50-
51- RUN usermod -u $NODE_UID node && \
52- groupmod -g $NODE_UID node && \
53- usermod -d /home/node -m node && \
54- chown -R $NODE_UID:$NODE_UID /home/node
55-
56- USER $NODE_UID
57-
58- CMD ["/bin/bash" ]
59-
60- # -----------------------------------------------------------------------------
61- # TARGET 2: Nodeapp image
26+ # TARGET 1: Nodeapp image
6227# -----------------------------------------------------------------------------
6328FROM nodeapp-base AS nodeapp
6429
@@ -75,6 +40,6 @@ EXPOSE $PORT
7540CMD [ "node" , "-r" , "dotenv/config" , "build" ]
7641
7742# -----------------------------------------------------------------------------
78- # TARGET 3 : Final image
43+ # TARGET 2 : Final image
7944# -----------------------------------------------------------------------------
8045FROM nodeapp AS final
0 commit comments