Docker. Conceptos base para entender Docker. Objetos de Docker.
Docker. Conceptos base para entender Docker. Objetos de Docker.
En la publicación anterior (Docker. Arquitectura de Docker. Diagrama de bloques), se hace mención que, el demonio de Docker juega un papel muy importante, ya que es el encargado de administrar los objetos de Docker.
En Docker, se les denomina objetos a los siguientes elementos:
Imágenes (Image).
Las imágenes en Docker son objetos que se crean a partir de una plantilla en la cual se define como será la creación de un Contenedor, es decir, es la receta de un platillo. Pero, su alcance no llega hasta ahí. La tecnología de Docker permite que una imagen sirva como base para la creación de otra imagen. Esto podría verse como las capas de una cebolla, donde está el centro como la imagen base, y la siguiente capa es una personalización sobre la capa principal. Puede crear imágenes propias o utilizar imágenes que fueron creados por otros.
Y ¿Cómo creo una imagen de Docker?
Para esto, es necesario que crees un archivo con el nombre de Dockerfile. Mediante una sintaxis simple (instrucciones) podemos definir los pasos necesarios para la creación de la imagen y ejecutarla. Cada instrucción en un Dockerfile crea una capa en la imagen. Cuando cambiás el Dockerfile y reconstruye la imagen, solamente las capas que modificaste se reconstruirán. Para entender más cómo es que se construyen las imágenes en Docker te mostraré un ejemplo ¡IMPORTANTE! Las imágenes están compuestas por capas. Así como las imágenes, las capas son inmutables.
No te enfoques en que hace cada instrucción, únicamente centrate en como cada línea representa cada capa de la imagen que se está construyendo.
Como te mencione, las imágenes y las capas son inmutables, lo que quiere decir que, cada vez que se modifica una capa esta se crea como una nueva capa (por eso el cambio de color) y se genera una nueva imagen (Imagen 2, Imagen 3, Imagen 4), no es que se reconstruya la misma imagen.
Cada capa tiene un ID que Docker le asigna. Cuando se está construyendo la imagen de Docker, en vez de volverá construir de cero la imagen, toma las capas que ya están construidas. Esto permite que las imágenes sean ligeras. Es como si tuvieras una Carpeta 01 con archivos Word, y creas otra Carpeta 02, donde agregás otros archivos, pero necesitás tener acceso a uno o dos archivos de la Carpeta 01. Sí solo precisás tener acceso a los archivos, creas Accesos directos de estos archivos y los pegas en la Carpeta 02, así no ocupas más espacio en disco duro.
Contenedor (Container)
Los Contenedores de Docker son objetos que se originan de las imágenes de Docker, es decir, imagina una fábrica de cajas de cartón, Docker sería la fábrica. Necesitás uno o varios diseños para tus cajas de cartón ya sea para paquetería, regalos, etc. Estos diseños (medidas, material, cortes y dobleces) se convierten en tus planos o plantillas que serían las imágenes de Docker, que te servirán para procesar el cartón y obtener el resultado final, la Caja (el Contenedor).
Los Contenedores de Docker se pueden crear, iniciar, detener, mover o borrar. Además, de estas acciones que se puede hacer con un Contenedor, es posible conectarlo a una red de datos, un almacenamiento y otros subsistemas subyacentes de otros Contenedores o de la máquina anfitrión.
Los Contenedores trabajan en un entorno aislado de otros contenedores y del equipo anfitrión, pero, es posible que exista comunicación entre Contenedores mediate una red virtual, permitiendo conectar varios Contenedores en una red o un Contenedor a varias redes o con el Equipo anfitrión.
Sobre el almacenamiento, cuando se crea un Contenedor y mientras se mantenga “vivo”, los datos e información, configuraciones que trabajes, instalaciones, modificaciones y creaciones estarán disponible, pero, cuando decidas borrarlo, ¡Todo se pierde!
Por si te perdiste de algún tema aquí te presento el temario:
- Aprendiendo desde cero hasta utilizarlo para desarrollo de software.
- Arquitectura de Docker. Diagrama de bloques.
¿Te imaginas ahorrar horas en tu computadora y trabajar como un verdadero profesional? 💻⚡
Ya está disponible el Pack de 10 Scripts de Automatización para Windows, diseñado para eliminar tareas repetitivas y hacer tu día mucho más eficiente.
Y esto es solo el comienzo… muy pronto lanzaré un Pack PRO, con automatizaciones avanzadas que llevarán tu productividad al siguiente nivel. 🚀
Comentarios
Publicar un comentario
¡Muchas por tu comentario! En breve estaré leyéndolo para responderte. Saludos :]