FROM docker.io/alpine:3.20 as builder RUN apk --no-cache add \ sed \ gcc \ g++ \ git \ musl-dev \ libffi-dev \ python3-dev \ rust \ cargo \ py3-pip \ py3-wheel \ py3-olm \ py3-qrcode \ py3-pillow \ py3-unpaddedbase64 \ py3-pycryptodome \ py3-pyaes \ py3-rsa \ py3-cparser \ py3-cffi \ py3-decorator \ py3-tqdm \ py3-numpy \ py3-future \ py3-asn1 \ py3-magic \ py3-commonmark \ py3-yarl \ py3-mako ENV VERSION=f6cb26f7f53089488e085b45add5303fa283dc3e RUN git clone https://github.com/mautrix/telegram.git WORKDIR /telegram RUN git checkout "$VERSION" RUN pip3 install --prefix=/install --upgrade -r requirements.txt RUN pip3 install --prefix=/install --upgrade -r optional-requirements.txt RUN cp -r mautrix_telegram /install/lib/python3.12/site-packages/ FROM docker.io/thallian/confd-env:3.20-3.1.6.2 ENV FFMPEG_BINARY=/usr/bin/ffmpeg COPY --from=builder /install /py-pkgs RUN addgroup -g 2222 matrix-bridge RUN adduser -h /var/lib/matrix-bridge -u 2222 -D -G matrix-bridge matrix-bridge RUN apk --no-cache add \ ca-certificates \ ffmpeg \ libffi \ python3 \ py3-brotli \ py3-olm \ py3-qrcode \ py3-pillow \ py3-phonenumbers \ py3-unpaddedbase64 \ py3-pycryptodome \ py3-pyaes \ py3-rsa \ py3-cparser \ py3-cffi \ py3-decorator \ py3-tqdm \ py3-numpy \ py3-future \ py3-asn1 \ py3-ruamel.yaml \ py3-magic \ py3-commonmark \ py3-aiohttp \ py3-yarl \ py3-mako \ py3-setuptools ENV PYTHONPATH=/usr/lib/python3.12/site-packages:/py-pkgs/lib/python3.12/site-packages/ WORKDIR /var/lib/matrix-bridge RUN mkdir /var/lib/matrix-bridge/data ADD /rootfs / RUN chown -R matrix-bridge:matrix-bridge /var/lib/matrix-bridge ENV HOME /var/lib/matrix-bridge EXPOSE 8080