Qué es Docker y cómo es relevante para su empresa

La situación en el pasado (y, a veces, la situación presente)

Antes de hablar sobre Docker, veamos la forma tradicional de virtualización, los problemas que la mayoría de los desarrolladores de aplicaciones solían enfrentar, y cómo Docker resuelve esos problemas.

Por ejemplo, en el pasado (e incluso ahora en algunos lugares), si un desarrollador quería un entorno virtualizado de una máquina Linux para ejecutar o probar su aplicación, debía instalar y configurar un hipervisor en la parte superior de su infraestructura existente. Eso se hacía en la siguiente forma:

Usar este enfoque para ejecutar aplicaciones tiene algunos inconvenientes, por ejemplo:

 

Otro problema común que enfrentan la mayoría de los administradores de configuración es la frase: «¡funciona en mi máquina pero no en la tuya!».

¿Qué es Docker?

Docker tiene varias definiciones, pero principalmente es una plataforma abierta para desarrollar, enviar y ejecutar aplicaciones.

Para explicar en detalle, dividimos la descripción de Docker en dos partes: la plataforma Docker y la definición de contenedor.

La plataforma Docker

En primer lugar, Docker proporciona la capacidad de empaquetar y ejecutar una aplicación en un entorno aislado llamado contenedor. El aislamiento y la seguridad permiten ejecutar muchos contenedores simultáneamente en un host determinado. Ya que los contenedores son livianos, no necesitan la carga adicional de un hipervisor ni de un sistema operativo, sino que se ejecutan directamente dentro del kernel de la máquina host. Esto significa que puede ejecutar más contenedores en una combinación de hardware determinado, a diferencia de una máquina virtual. Incluso puede ejecutar contenedores Docker en hosts que en realidad son máquinas virtuales.

Docker proporciona herramientas y una plataforma para administrar el ciclo de vida de sus contenedores. Por ejemplo, uno puede desarrollar una aplicación y sus componentes de soporte usando contenedores. El contenedor se convierte en la unidad para distribuir y probar la aplicación. Cuando esté listo, implemente la aplicación en su entorno de producción como un contenedor o un servicio orquestado. Esto funciona de la misma forma si su entorno de producción es un centro de datos local, un proveedor de la nube o un híbrido entre los dos.

¿Qué es un contenedor?

En la vida real, si un país quiere exportar un producto a otro país, debe almacenarlo en un contenedor y luego enviarlo por carretera o por mar a otro país. Dentro de los contenedores, cada producto se sitúa de manera tal que no se dañe y se transporte de forma segura, independientemente de dónde se mueva el contenedor.

La misma analogía se aplica a Docker para ejecutar y mantener aplicaciones distribuidas. La plataforma encapsula su aplicación en un contenedor con todos los binarios, librerías y dependencias, y la aísla completamente de entornos externos, independientemente de dónde se esté ejecutando.²

Los principales beneficios de Docker son:

¿Para qué puedo usar Docker?

Para entregar de manera rápida y consistente sus aplicaciones, por ejemplo:

Estadísticas de Docker

Si aún no está convencido de los beneficios de Docker, a continuación presentamos estadísticas y ejemplos:⁵

New Stack puede ayudar a su empresa a analizar, evaluar, crear la infraestructura y llevarla a ocupar la tecnología de Docker. Póngase en contacto con nosotros hoy y programe una reunión, ¡y demos el siguiente paso en la digitalización de su empresa!

Fuentes:

1https://social.technet.microsoft.com/wiki/contents/articles/34082.understanding-docker-for-absolute-beginners.aspx

2-4.https://docs.docker.com/engine/docker-overview/#what-can-i-use-docker-for

5.https://www.docker.com/why-docker

Cada día mas empresas confian en New Stack

El éxito de nuestros clientes es nuestro éxito.