Docker ¿Qué es un contenedor? conceptos que debes saber



¿Qué es un contenedor? 

En el mundo de la contenerización, no puede haber nada más fundamental que el concepto de contenedor. 

El sitio oficial de recursos de Docker dice: 

Un contenedor es una abstracción en la capa de aplicación que empaqueta el código y las dependencias juntos. En lugar de virtualizar toda la máquina física, los contenedores virtualizan solo el sistema operativo del host. 

Puede considerar que los contenedores son la próxima generación de máquinas virtuales. Al igual que las máquinas virtuales, los contenedores son entornos completamente aislados del sistema host y entre sí.

También son mucho más livianos que la máquina virtual tradicional, por lo que se puede ejecutar una gran cantidad de contenedores simultáneamente sin afectar el rendimiento del sistema host. 

Los contenedores y las máquinas virtuales son en realidad formas diferentes de virtualizar su hardware físico. La principal diferencia entre estos dos es el método de virtualización. Las máquinas virtuales generalmente son creadas y administradas por un programa conocido como hipervisor, como Oracle VM VirtualBox, VMware Workstation, KVM, Microsoft Hyper-V, etc. 

Este programa de hipervisor generalmente se encuentra entre el sistema operativo host y las máquinas virtuales para actuar como un medio de comunicación. 

Cada máquina virtual viene con su propio sistema operativo (invitado), que es tan pesado como el sistema operativo host. La aplicación que se ejecuta dentro de una máquina virtual se comunica con el sistema operativo invitado, que habla con el hipervisor, que a su vez habla con el sistema operativo host para asignar los recursos necesarios desde la infraestructura física a la aplicación en ejecución. 

Complicado verdad? Como puede ver, existe una larga cadena de comunicación entre las aplicaciones que se ejecutan dentro de las máquinas virtuales y la infraestructura física. La aplicación que se ejecuta dentro de la máquina virtual puede requerir solo una pequeña cantidad de recursos, pero el sistema operativo invitado agrega una sobrecarga notable. 

A diferencia de una máquina virtual, un contenedor hace el trabajo de virtualización de una manera más inteligente. En lugar de tener un sistema operativo invitado completo dentro de un contenedor, simplemente utiliza el sistema operativo host a través del tiempo de ejecución del contenedor mientras mantiene el aislamiento, como una máquina virtual tradicional.

 El tiempo de ejecución del contenedor, es decir, Docker, se encuentra entre los contenedores y el sistema operativo host en lugar de un hipervisor. Luego, los contenedores se comunican con el tiempo de ejecución del contenedor, que luego se comunica con el sistema operativo del host para obtener los recursos necesarios de la infraestructura física. Como resultado de eliminar toda la capa del sistema operativo del host, los contenedores son mucho más livianos y acaparan menos recursos que las máquinas virtuales tradicionales. 

 

 si deseas saber mas y te gusta ver videos te dejo una lista

el mejor curso de docker en español completo y gratis 

 

el primero video del curso 


 

 

 

Comentarios

Entradas populares de este blog

AWS SAM y AWS Lambda docker Container Image tutorial con PYTHON USANDO A...

Solucion: Docker Error: No such container:

Los unicas 4 herramientas que necesitas para volverte un master en Devops