Las cookies nos permiten ofrecer nuestros servicios. Al utilizar nuestros servicios, aceptas el uso que hacemos de las cookies. Más Información. Aceptar

Qué es Docker y sus ventajas de uso

Pablo Chico de Guzmán
  • Escrito por Pablo Chico de Guzmán el 04 de Agosto de 2018
  • 1 min de lectura | DevOps
Qué es Docker y sus ventajas de uso
El reproductor de video será cargado en breves instantes.

Vamos a ver qué es Docker y las ventajas que ofrece para cualquier desarrollador, sea cual sea el lenguaje de programación que se utilice para trabajar.

Qué es Docker

Docker es una tecnología que nos va a permitir ejecutar un proceso de una manera totalmente aislada del resto de los proceso de la máquina.

Es una tecnología que además de ejecutar ese proceso de manera aislada, nos va a permitir que ese proceso defina todas las dependencias que necesita para ser ejecutado.

Es decir, cuando llegamos a un proyecto nuevo o hacemos un check-out de un repositorio en Github, muchas veces necesitamos instalar una serie de dependencias o esa herramienta que queremos utilizar solo funciona sobre una distribución concreta de Linux.

Esa distribución que necesita para funcionar, las dependencias que necesita del sistema operativo para ejecutar y las dependencias, probablemente, del lenguaje de programación que necesita esa herramienta para ejecutar, con Docker vamos a conseguir empaquetarlas en una imagen, de tal manera que toda esa información está disponible en el momento de ejecutar este programa.

¿Qué conseguimos con eso?

Se consigue que ese programa sea totalmente portable. Vamos a poder ejecutar esa imagen en una maquina Mac, en una máquina Fedora, en una máquina Red Hat o en una máquina Ubuntu, y en todas las máquinas va a funcionar exactamente igual.

Es así porque ese contenedor desde la que vamos a ejecutar el contenedor ya lleva incluidas todas estas dependencias. La única dependencia que vamos a tener es tener instalado en la maquina Docker y un Kernel de Unix.

Muchas veces se utiliza Docker para desarrollar aplicaciones y para correr una aplicación web, pero toda esta tecnología que tenemos disponible de ejecutar un proceso de una manera aislada y sin necesidad de tener las dependencias instaladas en la máquina, también se aplica cualquier otro tipo de comando que necesitemos en nuestros workflows de desarrollo.

Por ejemplo, podríamos tener un contenedor en el que definamos dentro un makefile y éste tendrá todas las tareas de desarrollo que solamos utilizar. Si a este contenedor le montamos con un volumen el directorio de trabajo actual, tendremos un contendor que, sin necesidad de instalar ninguna dependencia en mi máquina, puede ejecutar todos los comandos de make que utilice en mi desarrollo.

Estas son algunas de las empresas que ya confían en OpenWebinars

Profesores y profesionales

Nuestros docentes son profesionales que trabajan día a día en la materia que imparten

Conviértete en profesor de OpenWebinars