ARG ARCH=amd64 FROM $ARCH/alpine:3.14 as builder ARG TAG ARG UID=991 ARG GID=991 RUN \ addgroup -g "${GID}" build && \ adduser -D -G build -u "${UID}" -g "" -h /opt/build build && \ apk add \ g++ \ gcc \ git \ make \ musl-dev \ nodejs \ npm \ python3 USER build WORKDIR /opt/build RUN \ git clone https://github.com/turt2live/matrix-dimension.git matrix-dimension WORKDIR /opt/build/matrix-dimension RUN \ git checkout $TAG && \ rm -r .git && \ npm install && \ npm run build FROM $ARCH/alpine:3.14 ARG UID=991 ARG GID=991 RUN \ addgroup -g "${GID}" app && \ adduser -D -G app -u "${UID}" -g "" -h /opt/app app && \ apk add nodejs npm tini && \ mkdir /etc/dimension USER app COPY --from=builder /opt/build/matrix-dimension /opt/app/matrix-dimension WORKDIR /opt/app/matrix-dimension ENV NODE_ENV=production EXPOSE 8184 ENTRYPOINT ["/sbin/tini", "--"] CMD ["npm", "run", "start:app"]