Pregunta:
Podemos buscar archivos de imagen disponibles en el sitio web de Docker de esta manera:
¿Cómo puedo saber cuáles serán los tamaños de descarga antes de extraer?
docker.io pull [image]
Respuesta:
Mirando la API para Docker, Docker Remote API v1.10 , no parece que haya ninguna forma de obtener los tamaños de las imágenes. La sección "2.2 Imágenes" muestra las especificaciones sobre cómo realizar consultas sobre imágenes.
Ejemplo
GET /images/json?all=0 HTTP/1.1
**Example response**:
HTTP/1.1 200 OK
Content-Type: application/json
[
{
"RepoTags": [
"ubuntu:12.04",
"ubuntu:precise",
"ubuntu:latest"
],
"Id": "8dbd9e392a964056420e5d58ca5cc376ef18e2de93b5cc90e868a1bbc8318c1c",
"Created": 1365714795,
"Size": 131506275,
"VirtualSize": 131506275
},
{
"RepoTags": [
"ubuntu:12.10",
"ubuntu:quantal"
],
"ParentId": "27cf784147099545",
"Id": "b750fe79269d2ec9a3c593ef05b4332b1d1a02a62b4accb2c21d589ff2f5f2dc",
"Created": 1364102658,
"Size": 24653,
"VirtualSize": 180116135
}
]
Pero esta consulta debe ir contra una instancia real de Docker. Aquí hay un ejemplo que muestra cómo se podría usar la consulta RESTful anterior:
$ echo -e "GET /images/json HTTP/1.0\r\n" | nc -U /var/run/docker.sock
HTTP/1.0 200 OK
Content-Type: application/json
Content-Length: 858
Connection: close
Date: Fri, 20 Dec 2013 16:02:41 GMT
[{"Repository":"ubuntu","Tag":"12.04","Id":"8dbd9e392...",
"Created":1365714795,"Size":131502179,"VirtualSize":131502179},
{"Repository":"ubuntu","Tag":"latest","Id":"8dbd9e392...",
"Created":1365714795,"Size":131502179,"VirtualSize":131502179},
{"Repository":"ubuntu","Tag":"precise","Id":"8dbd9e392...",
"Created":1365714795,"Size":131502179,"VirtualSize":131502179},
{"Repository":"ubuntu","Tag":"12.10","Id":"b750fe792...",
"Created":1364102658,"Size":24653,"VirtualSize":180116135},
{"Repository":"ubuntu","Tag":"quantal","Id":"b750fe792...",
"Created":1364102658,"Size":24653,"VirtualSize":180116135}]
No vi forma de consultar los repositorios públicos usando esta llamada RESTful en particular. El único otro método RESTful que parecía que podía consultar las imágenes de docker.io era a través de la búsqueda, GET /images/search
, pero la API no muestra ningún atributo de tamaño que se devuelva para esto.