¿Cómo instalar una versión específica de un paquete en Alpine?
Tengo un Dockerfile
para construir una imagen Docker que está basada en Alpine Linux. Ahora necesito instalar un paquete como parte de este Dockerfile
.
Actualmente tengo:
RUN apk update && \
apk upgrade && \
apk add git
Aparentemente esto es una mala idea, ya que el resultado no es determinista. En cambio, depende del momento en que construya la imagen, qué versión de git
se está instalando.
¿Cuál es la forma correcta de hacer esto?
Supongo que tengo que decirle a updated
, upgrade
y add
qué versiones usar, pero ¿cómo lo hago?
He visto que apk
admite la fijación de repositorios, pero eso no es lo que quiero (al menos eso creo), porque no quiero fijar un repositorio, sino un paquete.
En otras palabras: Si git
se pudiera instalar a través de npm
, podría ejecutar:
npm install git@1.9.2
(o la versión que quiera tener). ¿Cuál es el equivalente a esto para Alpine Linux?