GNU/Linux >> Tutoriales Linux >  >> Linux

¿Por qué todos usan Docker?

Docker ha sido un gran foco de conversación de TI últimamente porque aumenta la cantidad de aplicaciones que puede potenciar con los mismos servidores y simplifica el empaquetado y el envío de aplicaciones.

  • ¿Por qué la prisa por Docker?
  • Relación de Docker con LXC
  • Apto para empaquetar y enviar
  • Resumen y conclusión

“Docker es literalmente increíble. Nunca había podido configurar redes de servidores para clientes tan rápido”. – tuit de  Administrador de sistemas de Linux, Oliver Dunk, 21 de julio de 2015.

El año pasado, Docker fue una de las tecnologías que realmente atrajo la atención de todos, irrumpiendo en escena con muchas empresas que comenzaron a usarlo por primera vez, incluidas tres instituciones financieras importantes, según el vicepresidente de Docker, James Turnbull. Es sorprendente pensar que los bancos, de todas las organizaciones, estaban dispuestos a adoptar la versión 1.0 de una aplicación, ya que la seguridad es de suma importancia para ellos.

Bueno, es un poco impactante y no lo es, porque Docker de código abierto desarrolló rápidamente algunas relaciones importantes, con Redhat, Canonical e incluso Microsoft (particularmente convincente porque Microsoft es, por supuesto, propietario).

¿Por qué la prisa por Docker?

¿Qué es lo que fundamentalmente lleva a todos a Docker y contenedores en general? El jefe de virtualización de Parallels, James Bottomley, dice que la razón por la que las personas se están cambiando a Docker tiene que ver con la naturaleza de los hipervisores de las máquinas virtuales. Los hipervisores "se basan en la emulación de hardware virtual, [lo que significa] que son gordos en términos de requisitos del sistema", señala.

Con los contenedores, los sistemas operativos se comparten, lo que les permite usar los recursos de manera más eficiente. En lugar de seguir la ruta de la virtualización, los contenedores utilizan una instancia de Linux como base. Con esta táctica, las organizaciones pueden "dejar atrás el 99,9 % de las máquinas virtuales inútiles", explica Bottomley, "dejándote con una cápsula pequeña y ordenada que contiene tu aplicación".

El impacto de esta forma diferente de construir sistemas es profundo. Si tiene un entorno de contenedor que ha configurado correctamente, puede mejorar potencialmente la cantidad de instancias de aplicaciones de servidor en un 300-500 % en comparación con los servidores virtuales KVM o Xen.

Los contenedores pueden parecer un concepto revolucionario, pero en realidad no lo son. El enfoque tecnológico existe desde al menos FreeBSD Jails, que apareció por primera vez en 2000.

En realidad, Steven J. Vaughan-Nichols de ZDNet señala que es probable que haya sido usuario de sistemas de contenedores durante bastante tiempo sin saberlo. “Google tiene su propia tecnología de contenedores de código abierto lmctfy (Déjame contener eso por ti)”, explica. "Cada vez que utiliza alguna de las funciones de Google (Búsqueda, Gmail, Google Docs, lo que sea), se le asigna un nuevo contenedor".

Relación de Docker con LXC

Docker en realidad se creó utilizando Linux Containers (LXC), virtualización a nivel de sistema operativo a través de la cual puede ejecutar varios contenedores a través de un host de control. El factor principal que separa a las máquinas virtuales de los contenedores es que el nivel de abstracción de un hipervisor es la computadora completa, mientras que el nivel de abstracción de un sistema contenedor es el kernel del sistema operativo.

Los hipervisores tienen una clara ventaja aquí, como puede notar. No está atascado con un solo sistema operativo o kernel. Sus contenedores Docker, por otro lado, comparten el mismo sistema operativo y el mismo kernel.

No necesariamente necesita múltiples sistemas operativos, obviamente. Si solo desea ejecutar un montón de aplicaciones en la menor cantidad de servidores físicos, Docker tiene sentido.

Con Docker, los proveedores de alojamiento en la nube y los centros de datos pueden reducir drásticamente sus costos de servicios públicos y equipos.

Docker ha podido popularizar el enfoque de contenedores en parte porque mejoró la seguridad y la simplicidad de los entornos de contenedores. Además, la interoperabilidad se ve reforzada por su asociación con las principales empresas, como Google, Canonical y Red Hat, en su elemento de código abierto libcontainer.

Fácil de empacar y enviar

Bottomley señala que Docker también es útil para empaquetar y enviar aplicaciones. Inmediatamente puede mover su aplicación donde la necesite.

De esta manera, Docker realmente encontró una forma de satisfacer una necesidad de la empresa típica. Las empresas quieren que sus aplicaciones sean portátiles y quieren poder distribuirlas de manera efectiva, pero ese proceso es a menudo una fuente de inconsistencia, dice el analista de 451 Research Jay Lyman. "Al igual que GitHub estimuló la colaboración y la innovación al hacer que el código fuente se pudiera compartir", señala, "Docker Hub, los repositorios oficiales y el soporte comercial están ayudando a las empresas a responder a este desafío al mejorar la forma en que empaquetan, implementan y administran las aplicaciones".

Finalmente, es fácil implementar contenedores Docker en un escenario de nube. Puede integrarlo fácilmente con entornos típicos de DevOps sin problemas (Ansible, Puppet, etc.) o usarlo de forma independiente. La razón principal por la que es tan popular es la simplificación, dice Ben Lloyd Pearson a través de opensource.com. Puede hacer desarrollo local dentro de un sistema que es idéntico a un servidor en vivo; implementar varios entornos de desarrollo desde su host, cada uno de los cuales utiliza su propio software, sistema operativo y configuración; ejecutar fácilmente pruebas en varios servidores; y cree un conjunto idéntico de configuraciones, para que el trabajo colaborativo nunca se vea obstaculizado por los parámetros del host local.

Resumen y conclusión

En resumen, hay tres razones básicas para el éxito de Docker, según Vaughan-Nichols. En primer lugar, “[i]n puede hacer que se ejecuten más aplicaciones en el mismo hardware que otras tecnologías”. En segundo lugar, "facilita a los desarrolladores la creación rápida de aplicaciones de contenedor listas para ejecutar". Y, por último, "hace que la administración y la implementación de aplicaciones sean mucho más fáciles".

Todo el mundo está interesado en Docker y es fácil ver por qué. Entonces, ¿cómo empezar? Con una aplicación de un solo clic, puede estar despierto en 30 segundos. En Atlantic.Net, ofrecemos alojamiento SSD VPS que utiliza centros de datos internacionales y facturas por segundo para que nunca le cobren de más.


Linux
  1. Introducción a los contenedores Docker

  2. ¿Por qué Deis y qué es?

  3. Cómo eliminar todos los contenedores de Docker

  4. ¿Por qué usar innodb_file_per_table?

  5. ¿Por qué usamos una imagen base del sistema operativo con Docker si los contenedores no tienen un sistema operativo invitado?

Cómo escalar contenedores Docker en servidores usando Kubernetes

Cómo eliminar contenedores Docker

Cómo detener los contenedores de Docker

Monitoreo de contenedores Docker con Grafana usando Dockprom

Cómo gestionar contenedores Docker

Instale Odoo 15 usando Docker, Nginx en Ubuntu 22.04