FROM --platform=$BUILDPLATFORM debian:bookworm-slim AS builder ARG TARGETARCH RUN apt-get update && apt-get install -y \ git curl make gcc libssl-dev zlib1g-dev \ && rm -rf /var/lib/apt/lists/* RUN if [ "$(dpkg --print-architecture)" != "$TARGETARCH" ]; then \ dpkg --add-architecture $TARGETARCH && \ apt-get update && \ case "$TARGETARCH" in \ arm64) apt-get install -y gcc-aarch64-linux-gnu libssl-dev:arm64 zlib1g-dev:arm64 ;; \ amd64) apt-get install -y gcc-x86-64-linux-gnu libssl-dev:amd64 zlib1g-dev:amd64 ;; \ esac && \ rm -rf /var/lib/apt/lists/*; \ fi RUN git clone https://github.com/TelegramMessenger/MTProxy.git /src WORKDIR /src RUN NATIVE=$(dpkg --print-architecture) && \ if [ "$NATIVE" != "$TARGETARCH" ]; then \ case "$TARGETARCH" in \ arm64) export CC=aarch64-linux-gnu-gcc ;; \ amd64) export CC=x86_64-linux-gnu-gcc ;; \ esac; \ fi && \ make -j$(nproc) FROM debian:bookworm-slim ENV PROXY_PORT=30443 ENV STATS_PORT=8888 ENV WORKERS=1 ENV RUN_USER=nobody RUN apt-get update && apt-get install -y \ curl libssl3 zlib1g xxd \ && rm -rf /var/lib/apt/lists/* COPY --from=builder /src/objs/bin/mtproto-proxy /usr/local/bin/mtproto-proxy RUN curl -s https://core.telegram.org/getProxySecret -o /etc/mtproxy/proxy-secret --create-dirs && \ curl -s https://core.telegram.org/getProxyConfig -o /etc/mtproxy/proxy-multi.conf ENTRYPOINT mtproto-proxy \ -u ${RUN_USER} \ -p ${STATS_PORT} \ -H ${PROXY_PORT} \ -M ${WORKERS} \ --aes-pwd /etc/mtproxy/proxy-secret \ /etc/mtproxy/proxy-multi.conf