Para fines de investigación, estoy tratando de rastrear el registro público de Docker ( https://registry.hub.docker.com/ ) y averiguar 1) cuántas capas tiene una imagen promedio y 2) los tamaños de estas capas para obtener una idea de la distribución.
Sin embargo, estudié la API y las bibliotecas públicas, así como los detalles en github, pero no puedo encontrar ningún método para:
- recuperar todos los repositorios / imágenes públicos (incluso si son miles, todavía necesito una lista de inicio para recorrer)
- encontrar todas las capas de una imagen
- encuentre el tamaño de una capa (por lo tanto, no una imagen sino para la capa individual).
¿Alguien puede ayudarme a encontrar una manera de recuperar esta información?
¡Gracias!
EDITAR: ¿alguien puede verificar que la búsqueda de '*' en el registro de Docker devuelve todos los repositorios y no solo cualquier cosa que mencione '*' en cualquier lugar? https://registry.hub.docker.com/search?q=*
https://registry.hub.docker.com/search?q=*
muestra para mí 87031 repositorios,
docker history myimage
y verás el tamaño de cada capa. De manera más general, en una imagen, puede hacerdocker history myimage | awk 'NR>1 {print $1}' | xargs docker inspect --format '{{ ((index .ContainerConfig.Cmd ) 0) }}'
para ver qué comandos se emitieron para crear la imagen