docker/matrix-sticker-manager/Dockerfile
2021-11-10 16:55:59 -05:00

54 lines
1,009 B
Docker

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 \
git \
nodejs \
npm
USER build
WORKDIR /opt/build
RUN \
git clone https://github.com/turt2live/matrix-sticker-manager.git matrix-sticker-manager
WORKDIR /opt/build/matrix-sticker-manager
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 tini
USER app
COPY --from=builder /opt/build/matrix-sticker-manager /opt/app/matrix-sticker-manager
WORKDIR /opt/app/matrix-sticker-manager
ENV NODE_ENV=production
VOLUME /opt/app/matrix-sticker-manager/storage
VOLUME /opt/app/matrix-sticker-manager/config
EXPOSE 8082
ENTRYPOINT ["/sbin/tini", "--"]
CMD ["node", "/opt/app/matrix-sticker-manager/lib/index.js"]