Conceptos clave
Los conceptos clave relacionados con las imágenes Docker son los siguientes:
- Imagen (Image):
- Es un archivo inmutable que contiene todo lo necesario para ejecutar una aplicación, como el código fuente, dependencias, bibliotecas, variables de entorno y configuraciones del sistema operativo.
- Capa (Layer):
- Las imágenes Docker están construidas en capas, donde cada capa representa una instrucción en un Dockerfile. Estas capas son acumulativas, lo que significa que cada nueva capa se construye sobre la anterior. Las capas se almacenan en caché para optimizar la construcción de imágenes.
- Dockerfile:
- Es un archivo de texto que contiene una serie de instrucciones para construir una imagen Docker. Cada instrucción en el Dockerfile genera una nueva capa en la imagen.
- Inmutabilidad:
- Una vez creada, una imagen Docker no puede ser modificada. Cualquier cambio requiere la creación de una nueva imagen.
- Portabilidad:
- Las imágenes Docker son portátiles y pueden ser movidas entre diferentes entornos (desarrollo, pruebas, producción) sin modificaciones, garantizando que la aplicación se ejecute de manera consistente en cualquier lugar.
- Identificación (Digest):
- Las imágenes Docker se identifican de manera única mediante un digest, que es un hash criptográfico (generalmente SHA256) de la imagen. También se pueden identificar mediante tags, que son nombres legibles (como
latest
,v1.0
, etc.).
- Las imágenes Docker se identifican de manera única mediante un digest, que es un hash criptográfico (generalmente SHA256) de la imagen. También se pueden identificar mediante tags, que son nombres legibles (como
- Repositorios (Repository):
- Las imágenes Docker se almacenan en repositorios, que pueden ser públicos o privados, en servicios como Docker Hub o en registros privados. Un repositorio puede contener múltiples versiones (tags) de la misma imagen.
- Etiqueta (Tag):
- Una etiqueta es un alias legible que se asigna a una imagen para facilitar su identificación. Por ejemplo,
ubuntu:20.04
indica la versión 20.04 de la imagenubuntu
.
- Una etiqueta es un alias legible que se asigna a una imagen para facilitar su identificación. Por ejemplo,
- Capas de Capa Base (Base Image):
- Una imagen base es la capa inicial sobre la cual se construyen otras capas. Por ejemplo,
ubuntu:20.04
es una imagen base común que proporciona un entorno Linux básico.
- Una imagen base es la capa inicial sobre la cual se construyen otras capas. Por ejemplo,
- Capas Intermedias (Intermediate Layers):
- Son capas creadas durante la construcción de una imagen, pero no necesariamente incluidas en la imagen final. Docker las puede usar para optimizar la construcción y reutilizar capas comunes.
- Construcción (Build):
- El proceso de crear una imagen Docker a partir de un Dockerfile. El comando
docker build
se utiliza para este propósito.
- El proceso de crear una imagen Docker a partir de un Dockerfile. El comando
- Almacenamiento en Caché:
- Docker utiliza el almacenamiento en caché de capas para acelerar la construcción de imágenes reutilizando capas ya construidas previamente, siempre que el contenido no haya cambiado.
- Distribución:
- Las imágenes Docker pueden ser distribuidas y compartidas a través de registros de imágenes (como Docker Hub), lo que facilita su uso en diferentes entornos y por distintos equipos de desarrollo.
Estos conceptos son fundamentales para entender cómo funcionan las imágenes Docker, cómo se crean, se almacenan y se utilizan en el desarrollo y despliegue de aplicaciones.