Sin dudas, la llegada de Docker le ha facilitado la vida a un montón de desarrolladores de aplicaciones, resolviendo varios de los problemas a los que antes se enfrentaban a diario. Si bien tiene varias definiciones, sobre todas las cosas, es una plataforma abierta para desarrollar, enviar y ejecutar aplicaciones. Así lo definen expertos chilenos que ofrecen servicios de Big Data.
Sin embargo, para entenderlo al detalle, los especialistas trasandinos sostienen que es conveniente dividir su descripción en dos partes: por un lado, la de contenedor y por el otro, la plataforma Docker en sí.
Qué puede aportar
Dicen que Docker proporciona la capacidad de empaquetar y ejecutar una aplicación en un entorno aislado llamado contenedor, añadiendo que el aislamiento y la seguridad permiten ejecutar muchos contenedores simultáneamente en un host determinado.
A su vez, algo importante que remarcan es que éstos no necesitan la carga adicional de un hipervisor ni de un sistema operativo, ya que los contenedores son livianos. Por lo tanto, se ejecutan dentro del kernel de la máquina host.
A diferencia de una máquina virtual, “puede ejecutar más contenedores en una combinación de hardware determinado. Incluso puede ejecutar contenedores Docks en hosts que en realidad son máquinas virtuales”, añaden. También, subrayan que un desarrollador puede administrar el ciclo de vida de sus contenedores, ya que Docker proporciona herramientas y una plataforma para hacerlo.
En cuanto al contenedor, la referente norteamericana Oracle lo define como “un formato de empaquetado que empaqueta (valga la redundancia todo el código y las dependencias de una aplicación en un formato estándar que le permite ejecutarse de manera rápida y confiable en todos los entornos informáticos”.
En ese sentido, marca que un contenedor Docker es un contenedor liviano, independiente, y popular, “que incluye todo lo necesario para ejecutar una aplicación, incluidas bibliotecas, herramientas del sistema, código y tiempo de ejecución”.
Para qué y por qué utilizar Docker
Según los especialistas chilenos, una de las razones que invita a implementarlo es que optimiza el ciclo de vida del desarrollo, permitiendo que los desarrolladores trabajen en entornos estandarizados utilizando contenedores locales que proporcionan sus aplicaciones y servicios.
También, la portabilidad de Docker y su naturaleza liviana – añaden -facilitan la administración dinámica de cargas de trabajo, ampliando o eliminando aplicaciones y servicios según las necesidades del negocio, casi en tiempo real.
A su vez dicen que los Docker pueden ejecutarse en la computadora portátil local de un desarrollador; en máquinas físicas o virtuales en un centro de datos; en proveedores de la nube; o en una combinación de entornos.