Das slim-bullseye-Image bringt kein objdump mit -> PyInstaller bricht mit 'On Linux, objdump is required' ab. binutils per apt nachinstalliert. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
25 lines
935 B
INI
25 lines
935 B
INI
# Baut die Host-Agent-Binary mit PyInstaller in einem Container mit ALTEM glibc
|
|
# (bullseye, glibc 2.31), damit die Onefile-Binary auf moeglichst vielen Linux-
|
|
# Distributionen laeuft (glibc ist abwaerts-, nicht aufwaertskompatibel).
|
|
FROM python:3.11-slim-bullseye
|
|
|
|
WORKDIR /build
|
|
|
|
# PyInstaller braucht objdump aus binutils (im slim-Image nicht enthalten).
|
|
RUN apt-get update \
|
|
&& apt-get install -y --no-install-recommends binutils \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
RUN pip install --no-cache-dir pyinstaller
|
|
COPY requirements.txt .
|
|
RUN pip install --no-cache-dir -r requirements.txt
|
|
COPY host_agent.py .
|
|
|
|
# Onefile-Binary; psutil-Hidden-Imports werden von PyInstaller erkannt.
|
|
RUN pyinstaller --onefile --name aria-host-agent \
|
|
--collect-all psutil \
|
|
host_agent.py
|
|
|
|
# Ergebnis liegt in /build/dist/aria-host-agent
|
|
CMD ["sh", "-c", "cp /build/dist/aria-host-agent /out/ && echo 'Binary -> /out/aria-host-agent'"]
|