Mam Dockerfile
zbudować obraz Dockera oparty na systemie Alpine Linux. Teraz muszę zainstalować pakiet w ramach tego Dockerfile
.
Obecnie mam:
RUN apk update && \
apk upgrade && \
apk add git
Najwyraźniej jest to zły pomysł, ponieważ wynik jest niedeterministyczny. Zamiast tego zależy to od momentu, w którym zbuduję obraz, którą wersję git
instaluję.
Jaki jest właściwy sposób to zrobić?
Myślę, że muszę powiedzieć updated
, upgrade
i add
które wersje w użyciu, ale jak mam to zrobić?
Widziałem, że apk
obsługuje przypinanie repozytoriów, ale nie tego chcę (przynajmniej tak mi się wydaje), ponieważ nie chcę przypinać repozytorium, ale pakiet.
Innymi słowy: Gdyby git
można było zainstalować przez npm
, byłbym w stanie uruchomić:
npm install git@1.9.2
(lub jakąkolwiek wersję chcę mieć). Co to jest równoważne z Alpine Linux?