diff --git a/k8s/apps/mtproxy/Dockerfile b/k8s/apps/mtproxy/Dockerfile index b6b051d..6511478 100644 --- a/k8s/apps/mtproxy/Dockerfile +++ b/k8s/apps/mtproxy/Dockerfile @@ -1,12 +1,32 @@ -FROM debian:bookworm-slim AS builder +FROM --platform=$BUILDPLATFORM debian:bookworm-slim AS builder + +ARG TARGETARCH RUN apt-get update && apt-get install -y \ - git curl build-essential libssl-dev zlib1g-dev \ + 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 make -j$(nproc) + +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