From b69c3b67e25e3b5a05a4f2340d03e33a352391d0 Mon Sep 17 00:00:00 2001 From: embeddevio Date: Thu, 29 Oct 2026 22:41:58 +0300 Subject: [PATCH] =?UTF-8?q?fix(#61):=20=D0=BD=D0=B5=20=D0=BE=D1=81=D1=82?= =?UTF-8?q?=D0=B0=D0=B2=D0=BB=D1=8F=D1=82=D1=8C=20pip=20=D0=B2=20runtime-?= =?UTF-8?q?=D0=BE=D0=B1=D1=80=D0=B0=D0=B7=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit trivy разбирает pip/_vendor/vendor.txt и репортит вендоренные msgpack 1.1.2 / urllib3 2.7.0 / setuptools 70.3.0 как установленные пакеты — при том что в venv реально стоят 1.2.4 / 2.8.0 / 84.2.1 (проверено pip list внутри образа staging-cc3621a1). py3-pip переведён в .build-deps и удаляется вместе с ними; pip в venv и системный pip вычищаются — runtime не должен содержать инсталлятора. Refs #61 --- deploy/Dockerfile | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/deploy/Dockerfile b/deploy/Dockerfile index f5860ea..4ff478d 100644 --- a/deploy/Dockerfile +++ b/deploy/Dockerfile @@ -54,7 +54,7 @@ LABEL org.opencontainers.image.title="awg-dash" \ # curl (HEALTHCHECK), tini (PID 1), su-exec (запуск API под непривилегированным пользователем). RUN apk add --no-cache \ bash curl iproute2 ipset iptables ip6tables dnsmasq \ - python3 py3-pip tini su-exec \ + python3 tini su-exec \ && addgroup -S awg \ && adduser -S -G awg -h /app awg @@ -70,11 +70,18 @@ ENV PATH=/opt/venv/bin:$PATH \ WORKDIR /app COPY requirements.txt /app/requirements.txt -RUN apk add --no-cache --virtual .build-deps gcc musl-dev python3-dev libffi-dev \ +# py3-pip нужен только на время сборки venv: в runtime pip не остаётся. Иначе trivy разбирает +# pip/_vendor/vendor.txt и репортит вендоренные версии (msgpack 1.1.2 / urllib3 2.7.0 / +# setuptools 70.3.0) как установленные пакеты — ложные HIGH на образе, где стоят 1.2.4/2.8.0/84.2.1 (issue #61). +RUN apk add --no-cache --virtual .build-deps gcc musl-dev python3-dev libffi-dev py3-pip \ && python3 -m venv /opt/venv \ && /opt/venv/bin/pip install --no-cache-dir --upgrade pip \ && /opt/venv/bin/pip install --no-cache-dir -r /app/requirements.txt \ - && apk del .build-deps + && apk del .build-deps \ + && rm -rf /opt/venv/lib/python3*/site-packages/pip /opt/venv/lib/python3*/site-packages/pip-* \ + && rm -f /opt/venv/bin/pip /opt/venv/bin/pip3 /opt/venv/bin/pip3.* \ + && rm -rf /usr/lib/python3*/site-packages/pip /usr/lib/python3*/site-packages/pip-* \ + && rm -f /usr/bin/pip3 /usr/bin/pip3.* COPY backend/ /app/backend/ COPY --from=go-build /usr/local/bin/awg /usr/local/bin/awg