Wie verhindere ich die Kompilierung von Pip av
, wenn ich python3-av
die Installation über durchgeführt habe apt
?
Ich führe einen Multi-Arch-Docker-Build mit einem Dockerfile durch, das wie folgt aussieht:
FROM python:3-bullseye
RUN apt-get update && apt-get install -y python3-av
COPY requirements.txt ./
RUN pip install --no-cache-dir -r requirements.txt
Eine der Anforderungen ( auto-editor
) erfordert av
. Auf ARM64 versucht esav
Aus der Quelle erstellen, was mehr als 10 Minuten dauert. Wie vermeide ich eine erneute pip
Installation av
?
Antwort1
So wie ich das verstehe, möchten Sie nach der ersten Installation einen Kontrollpunkt erstellen, richtig?
Sie können dieses Dockerfile in ein Baseimage.Dockerfile und ein Installations-Dockerfile aufteilen.
Für baseimage.dockerfile
FROM python:3-bullseye RUN apt-get update && apt-get install -y python3-av
Dann bauen Sie mit
docker build ./baseimage.dockerfile -t python-av-base
Damit können Sie einen Kontrollpunkt setzen
Führen Sie für installation.dockerfile die Installation wie erwartet aus
FROM python-av-base COPY requirements.txt ./ RUN pip install --no-cache-dir -r requirements.txt