# Container für aubox. Funktioniert auf x86_64 und arm64 (Pi 4) gleichermaßen.
#
# Bauen:
#   docker build -t aubox .
#
# Start mit USB-Passthrough siehe scripts/run-docker.sh.
FROM debian:bookworm-slim

ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update && apt-get install -y --no-install-recommends \
        python3 \
        python3-pip \
        android-tools-adb \
        android-tools-fastboot \
        libusb-1.0-0 \
        usbutils \
        ca-certificates \
    && rm -rf /var/lib/apt/lists/*

WORKDIR /app

COPY requirements.txt ./
RUN pip3 install --no-cache-dir --break-system-packages -r requirements.txt

COPY aubox/ ./aubox/

# loaders/ und firmware/ werden zur Laufzeit als Volumes gemountet — nicht ins
# Image kopieren. Damit sind Hersteller-Binaries nie im Image-Layer.

EXPOSE 8080
ENTRYPOINT ["python3", "-m", "aubox"]
CMD ["web", "--host", "0.0.0.0", "--port", "8080"]
