Devo Dockerfilecreare un'immagine Docker basata su Alpine Linux. Ora devo installare un pacchetto come parte di questo Dockerfile.
Attualmente ho:
RUN apk update && \
apk upgrade && \
apk add git
Apparentemente questa è una cattiva idea, in quanto il risultato non è deterministico. Invece, dipende dal momento in cui creo l'immagine, quale versione di gitviene installata.
Qual è il modo corretto di farlo?
Credo che devo dire updated, upgradee addquali versioni da usare, ma come faccio a fare questo?
Ho visto che apksupporta il pinning dei repository, ma non è quello che voglio (almeno lo penso), perché non voglio aggiungere un repository, ma un pacchetto.
In altre parole: se gitpotesse essere installato tramite npm, sarei in grado di eseguire:
npm install git@1.9.2
(o qualsiasi versione che voglio avere). Qual è l'equivalente di questo per Alpine Linux?