Eu tenho Dockerfile
que construir uma imagem do Docker baseada no Alpine Linux. Agora eu preciso instalar um pacote como parte disso Dockerfile
.
Atualmente tenho:
RUN apk update && \
apk upgrade && \
apk add git
Aparentemente, essa é uma péssima idéia, pois o resultado é não determinístico. Em vez disso, depende do momento em que eu construo a imagem, qual versão git
está sendo instalada.
Qual é a maneira correta de fazer isso?
Eu acho que eu tenho que dizer updated
, upgrade
e add
quais versões de usar, mas como posso fazer isso?
Eu já vi que apk
suporta a fixação de repositórios, mas não é isso que eu quero (pelo menos acho que sim), porque não quero fixar um repositório, mas um pacote.
Em outras palavras: se git
pudesse ser instalado via npm
, eu seria capaz de executar:
npm install git@1.9.2
(ou qualquer versão que eu queira ter). Qual é o equivalente a isso para o Alpine Linux?