FROM node:18 as build

WORKDIR /app

# copy the app, note .dockerignore
COPY . /app

RUN npm ci \
  && npm run build \
  && npm prune --production \
  && curl -sf https://gobinaries.com/tj/node-prune | sh \
  && node-prune

FROM node:alpine

WORKDIR /app

# copy from build image
COPY --from=build /app ./

EXPOSE 3000

CMD [ "npm", "start" ]
