martes , 15 octubre 2019
Inicio / Blog / ¿Qué es, para qué sirve y como instalo un docker en Linux?
Docker
Docker

¿Qué es, para qué sirve y como instalo un docker en Linux?

Docker, es una tecnología que permite la creación y el uso de contenedores de Linux.

Para entender por qué Docker es tan valioso para los desarrolladores de software, primero hay que comprender cómo es que Docker aporta (o no) cambios a la hora de desarrollar y desplegar software.

En la mayoría de las empresas, el desarrollo, despliegue y la entrega de software es un proceso con varios pasos bien diferenciados:

  1. El primer paso es el diseño de la aplicación.
  2. El segundo es el desarrollo de la misma, escribiendo el código.
  3. El tercer paso es montar el código en un entorno de pruebas y probarlo.
  4. El cuarto y último paso consiste en empaquetar la aplicación probada, desplegarla y entregarla a los usuarios.

Desde un punto de vista de desarrollo y despliegue, los contenedores pueden hacer todo lo que hacen las máquinas virtuales, pero mejor.

La tecnología Docker usa el kernel de Linux y las funciones de este, como Cgroups y namespaces, para segregar los procesos, de modo que puedan ejecutarse de manera independiente. El propósito de los contenedores es esta independencia: la capacidad de ejecutar varios procesos y aplicaciones por separado para hacer un mejor uso de su infraestructura y, al mismo tiempo, conservar la seguridad que tendría con sistemas separados.

¿Qué es un contenedor linux?

La empresa RedHat Linux nos da una definición muy precisa y clara: “Un contenedor de Linux® es un conjunto de uno o más procesos que se encuentran aislados del resto del sistema. Todos los archivos que se necesitan para ejecutarlos provienen de una imagen diferente, lo cual significa que los contenedores de Linux son móviles y homogéneos a medida que pasan de la etapa de desarrollo a la de prueba y, finalmente, a la de producción. La comunidad open source Docker trabaja para mejorar estas tecnologías a fin de beneficiar a todos los usuarios de forma gratuita.”

La empresa, Docker Inc., desarrolla el trabajo de la comunidad Docker, lo hace más seguro y comparte estos avances con el resto de la comunidad. También respalda las tecnologías mejoradas y reforzadas para los clientes empresariales.

docker

¿Qué beneficios tiene un docker?

  • Solo se tiene que programar la aplicación una sola vez. Dado que una app en Docker se ejecuta dentro de un contenedor, y el contenedor se puede ejecutar en cualquier sistema operativo que tenga Docker instalado, no se tiene que programar y configurar el software para diferentes tipos de plataformas hardware o sistemas operativos en los que tiene que poder ejecutarse. Solo tienes que programarlo una sola vez para Docker.
  • Se obtiene una mayor consistencia entre los entornos de prueba y los entornos de producción. Cuando se desarrolla con Docker, se hacen pruebas de la app dentro de un contenedor, y la despliegas dentro de un contenedor. Eso significa que el entorno de pruebas es idéntico al entorno en el que se va a ejecutar el software. En consecuencia, los desarrolladores ganan en tranquilidad y en confianza pues saben que los usuarios finales no se van a topar con problemas que el equipo que probó el software hubiera pasado por alto.
  • Se obtiene mayor modularidad. El desarrollo con contenedores es ideal para un enfoque basado en microservicios para el diseño de aplicaciones. Bajo este modelo, las aplicaciones complejas se dividen en unidades más discretas y pequeñas. Por ejemplo, y sin llegar a cambiar la arquitectura tradicional de la app, la base de datos quizás se ejecute en un contenedor mientras que el front-end de la misma se ejecuta en otro distinto. Este enfoque hace que la aplicación sea modular, reduciendo la complejidad de tener que mantener y actualizar la aplicación, dado que un error o un cambio relacionado con una parte de la app no requiere que se revise la aplicación completa.
  • Docker es una herramienta diseñada para beneficiar tanto a desarrolladores, testers, como administradores de sistemas, en relación a las máquinas, a los entornos en sí donde se ejecutan las aplicaciones software, los procesos de despliegue, etc.
  • En el caso de los desarrolladores, el uso de Docker hace que puedan centrarse en desarrollar su código sin preocuparse de si dicho código funcionará en la máquina en la que se ejecutará.

Estadísticas sobre docker:

  • 2/3 de las empresas que prueban Docker, lo adoptan. La mayoría de las compañías que adoptaron Docker ya lo hicieron dentro de los 30 días posteriores al uso inicial de la producción, y casi todos los restantes se convierten dentro de los 60 días.
  • La adopción de Docker real aumentó un 30% en un año.
    Adopta 5 veces su contenedor. Docker adopta aproximadamente 5 veces la cantidad de promedio de contenedores en funcionamiento que tienen en producción entre su primer y décimo mes de uso.
  • PHP, Ruby, Java y Node son los principales frameworks de programación utilizados en contenedores

Si deseas aprender como instalar docker en Ubuntu, da clic aqui
Si deseas aprender como instalar doker en CentOS,   da clic aqui

 

Acerca de Clibre

15 años de experiencia como Consultor especialista en implementación de soluciones en open source (software libre). En la actualidad estoy a cargo de la gestión de proyectos para la capacitación y servicios de implementación open source de la empresa Conocimiento Libre. Asi como sustento el cargo de la administración y editor en jefe del portal y medios sociales https://conocimientolibre.mx

Compruebe también

Catalogo de cursos Linux

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *