Saltar la navegación

3.1 Descarga de imágenes

Descarga de imágenes Docker

En lo que llevamos de aprendizaje hemos visto dos formas para descargar una imagen docker:

  • Usando la el comando docker pull, indicando el nombre de la imagen y la versión de la misma (TAG). Si no indicamos nada se descarga la última versión (latest). Por ejemplo:

# mysql - Es el nombre de la imagen 8.0.22 es la versión o TAG

> docker pull mysql:8.0.22

  • Al hacer docker run indicando, para la ejecución del contenedor, una imagen base que no hayamos descargado previamente. En ese caso se descargará la imagen y posteriormente empezará a ejecutarse el contenedor si todos los parámetros están bien. Por ejemplo:

# Supondremos que es la PRIMERA VEZ que vamos a usar esa imagen y no la hemos descargado

> docker run -it -d --name mysql8 -p 3306:3306 mysql:8.0.22

En cualquiera de los dos casos empieza un proceso de descarga que nos mostrará una serie de líneas, algo parecido a la siguiente imagen:

Resultado: docker pull mysql:8.0.22
Juan Diego Pérez. Resultado: docker pull mysql:8.0.22 (Dominio público)

Cada una de las líneas que se nos muestra es una de las capas que conforman la imagen docker. Se parte de una imagen inicial o imagen base  y  cada instrucción que realizamos para construir una nueva imagen con los elementos que queramos genera una nueva capa que en realidad, son imágenes intermedias. Esto permite que las capas que son compartidas por varias imágenes no tengan que bajarse dos veces.

De todas esto hablaremos con más calma en el módulo 6: "Construyendo mis propios contenedores".

Mostrar imágenes descargadas

Cada vez que descarguemos una imagen podemos mostrar por pantalla una lista de las imágenes que tenemos en nuestro sistema usando la orden:

# Listas imágenes descargas

> docker images

La salida a ese comando será algo similar a la siguiente:

Mostrar imágenes
                          descargadas
Juan Diego Pérez Jiménez. Mostrar imágenes descargadas (Dominio público)

La información que se  nos muestra se organiza en forma tabular y nos proporciona los siguientes datos:

  • REPOSITORY: Nombre de la imagen en el repositorio. Por ejemplo: mysql.
  • TAG: Versión de la imagen que hemos descargado. Por ejemplo: Para la imagen mysql observamos 3 versiones descargadas (5.7, latest que significa que era la última en el momento de descargarse y 8.0.22).
  • IMAGE ID: Un identificador que es único para cada imagen. Siempre podemos usar este ID en vez del nombre.
  • CREATED: Hace cuánto se creo la imagen.
  • SIZE: Tamaño de la imagen.

docker pull

Pese a que hemos visto que existen dos formas de realizar la descarga de las imágenes es recomendable usar docker pull por las siguientes razones:

  • Permite actualizar  una determina pareja imagen:versión a su última actualización. Bastará con ejecuatr docker pull con el mismo imagen:versión

# Suponiendo que ya teníamos previamente la versión descargada. Actualiza la versión mysql:5.7

> docker pull mysql:5.7

  • Permite bajar todas las versiones de una imagen de una sola vez. Esto puede ser costoso en términos de almacenamiento si una imagen tiene muchas versiones disponibles. Se hace con las opciones -a o --all-tags

# Descargamos todas las versiones de la imagen php. CON MUCHO CUIDADO, NO PROBAR

> docker pull -a php o docker pull --all-tags php

  • docker pull tiene otras opciones que son útiles a nivel de usuario, por ejemplo -q, --quiet que evita que por la salida estandar aparezca la información de las capas que conforman el contenedor y cualquier información no relevante.

# No muestro la información de las capas al descargarse

> docker pull -q httpd  o docker pull --quiet

Creado con eXeLearning (Ventana nueva)