diff --git a/Dockerfile b/Dockerfile index ecda5d2..cf9ab67 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,18 +1,28 @@ -FROM node:16-alpine +# ---- Base ---- +FROM alpine:3 AS base # Create app directory WORKDIR /usr/src/app +# Copy project file +COPY package.json . + +# Install required apk-packages +RUN apk add --no-cache nodejs npm tcpdump + + +# ---- Dependencies ---- +FROM base AS dependencies + # Install app dependencies -COPY package*.json ./ -RUN npm install +RUN npm install --only=production -# remove development dependencies -RUN npm prune --production -# Install required apk-packages & delete cache -RUN apk add --no-cache tcpdump +# ---- Release ---- +FROM base AS release +# copy from build image +COPY --from=dependencies /usr/src/app/ ./ # Bundle app source COPY ./src/ .