Para fins de pesquisa, estou tentando rastrear o registro público do Docker ( https://registry.hub.docker.com/ ) e descobrir 1) quantas camadas uma imagem média tem e 2) os tamanhos dessas camadas para obter um ideia da distribuição.
No entanto, estudei a API e as bibliotecas públicas, bem como os detalhes no github, mas não consigo encontrar nenhum método para:
- recuperar todos os repositórios / imagens públicos (mesmo que sejam milhares, ainda preciso de uma lista inicial para iterar)
- encontre todas as camadas de uma imagem
- encontre o tamanho de uma camada (portanto, não de uma imagem, mas de uma camada individual).
Alguém pode me ajudar a encontrar uma maneira de recuperar essas informações?
Obrigado!
EDITAR: alguém é capaz de verificar se a pesquisa de '*' no registro do Docker está retornando todos os repositórios e não apenas qualquer coisa que mencione '*' em qualquer lugar? https://registry.hub.docker.com/search?q=*
https://registry.hub.docker.com/search?q=*
mostra para mim 87031 repositórios,
docker history myimage
e verá o tamanho de cada camada. De forma mais geral, em uma imagem, você pode fazerdocker history myimage | awk 'NR>1 {print $1}' | xargs docker inspect --format '{{ ((index .ContainerConfig.Cmd ) 0) }}'
para ver quais comandos foram emitidos para criar a imagem