mirror of
https://github.com/tommytran732/Matrix.to-Docker
synced 2024-11-25 11:11:34 -05:00
58 lines
1.4 KiB
Docker
58 lines
1.4 KiB
Docker
ARG HARDENED_MALLOC_VERSION=2024060400
|
|
|
|
### Build Hardened Malloc
|
|
FROM alpine:latest as hmalloc-builder
|
|
|
|
ARG HARDENED_MALLOC_VERSION
|
|
ARG CONFIG_NATIVE=false
|
|
ARG VARIANT=default
|
|
|
|
RUN apk -U upgrade \
|
|
&& apk --no-cache add build-base git gnupg openssh-keygen
|
|
|
|
RUN cd /tmp \
|
|
&& git clone --depth 1 --branch ${HARDENED_MALLOC_VERSION} https://github.com/GrapheneOS/hardened_malloc \
|
|
&& cd hardened_malloc \
|
|
&& wget -q https://grapheneos.org/allowed_signers -O grapheneos_allowed_signers \
|
|
&& git config gpg.ssh.allowedSignersFile grapheneos_allowed_signers \
|
|
&& git verify-tag $(git describe --tags) \
|
|
&& make CONFIG_NATIVE=${CONFIG_NATIVE} VARIANT=${VARIANT}
|
|
|
|
### Build Production
|
|
|
|
FROM node:alpine
|
|
|
|
LABEL maintainer="Thien Tran contact@tommytran.io"
|
|
|
|
ARG UID=992
|
|
ARG GID=992
|
|
|
|
RUN apk -U upgrade \
|
|
&& apk --no-cache add git \
|
|
&& adduser -g ${GID} -u ${UID} --disabled-password --gecos "" matrix-to
|
|
|
|
USER matrix-to
|
|
|
|
WORKDIR /home/matrix-to
|
|
|
|
RUN git clone https://github.com/matrix-org/matrix.to
|
|
|
|
COPY element.patch /home/matrix-to/matrix.to
|
|
|
|
WORKDIR /home/matrix-to/matrix.to
|
|
|
|
RUN git apply /home/matrix-to/matrix.to/element.patch \
|
|
&& rm -rf .git \
|
|
&& rm -rf yarn.lock \
|
|
&& yarn \
|
|
&& yarn cache clean \
|
|
&& yarn build
|
|
|
|
COPY --from=hmalloc-builder /tmp/hardened_malloc/out/libhardened_malloc.so /usr/local/lib/
|
|
|
|
ENV LD_PRELOAD="/usr/local/lib/libhardened_malloc.so"
|
|
|
|
EXPOSE 5000
|
|
|
|
ENTRYPOINT ["yarn", "start"]
|