Mam Dockerfilezbudować 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ę gitinstaluję.
Jaki jest właściwy sposób to zrobić?
Myślę, że muszę powiedzieć updated, upgradei addktóre wersje w użyciu, ale jak mam to zrobić?
Widziałem, że apkobsługuje przypinanie repozytoriów, ale nie tego chcę (przynajmniej tak mi się wydaje), ponieważ nie chcę przypinać repozytorium, ale pakiet.
Innymi słowy: Gdyby gitmoż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?