Seguro que últimamente habrás oído hablar de Docker, puesto que es una herramienta tecnológica que de cada vez se usa más. Con este artículo, haremos una introducción a que es docker, cuales son sus ventajas, y porque usar docker. Pero no es un artículo avanzado de docker donde expliquemos cómo instalarlo, cómo ejecutarlo o aspectos más técnicos.

Docker nos permite tener control sobre cada una de las fases de vida de un producto. Una aplicación incluye no solo la aplicación como tal, sino que tenemos un motor, un conjunto de librerías y el kernel o software. Docker permite agrupar todo esto en un contenedor y almacenarlo en nuestro disco duro. De forma que copia todo lo que pertenece a un mismo sistema operativo y lo almacena en una zona de nuestro disco duro para luego ejecutarla independientemente del sistema operativo. Esto permite que puedas transportar la aplicación y ejecutarla donde quieras, sin preocuparte por el software o si tienes todos los componentes de la aplicación para iniciarla.

Con Docker, podemos trabajar con múltiples contenedores que comparte un mismo núcleo y a cada uno restringir la CPU que puede consumir. Gracias a esto, podemos trabajar con diferentes aplicaciones.

 

¿Cuáles son las ventajas de Docker?

 

  • Facilita el testing, facilita la tarea, puesto que si tenemos instalado Docker en nuestro ordenador y nos pasan un contenedor con una App a testear. Da igual cual sea el software que tengamos, docker nos permitirá abrir la app y poder probarla.
  • Ahorra tiempo, al no obligarnos a instalar diferentes softwares para poder ejecutar una App.
  • Es muy sencillo crear y eliminar contenedores.
  • Son muy ligeros, lo que nos permite manejar diferentes contenedores dentro de una misma máquina.
  • Al necesitar menos espacio y poderlos incluir en una misma máquina, implica que necesitemos menos ordenadores. Menos costes.
  • Es open source.
  • Nos proporcionan autonomía, al partir de que en cada contenedor tenemos todo lo necesario para ejecutar una aplicación.
  • Portabilidad. Al almacenar los contenedores en discos duros, estos se pueden transportar de un lugar a otro sin problemas.
  • Imágenes docker. Podríamos definir estas imágenes como sistemas operativos con aplicaciones instaladas. A este SO, podremos incluir nuestras imágenes para su posterior visualización en un equipo.
  • Repositorios Docker. “Banco de imágenes docker” creadas por usuarios a las cuales podemos tener acceso.
  • Con Docker, tenemos capacidad de ejecutar prácticamente todas las aplicaciones.
  • Nos facilita el compartir nuestras aplicaciones a través de los contenedores.
  • Se acelera el proceso de mantenimiento y desarrollo gracias a las facilidades para generar copias.
  • Las aplicaciones se ejecutan sin variaciones. Sin importar el equipo ni el ambiente.
  • Facilita las visualizaciones al cliente gracias a que no tiene que instalar nada más que docker en su ordenador.
  • Es un entorno seguro y no ofrece variaciones.

 

¿ Porque usar Docker ?

 

Usando Dockers, evitamos tener que descargar y almacenar gran número de librerías. Puesto que podremos desarrollar cada aplicación en contenedores independientes. Esta tarea reduce al mismo tiempo los residuos que se pueden haber creado durante el desarrollo y el propio desarrollo lo ejecutamos en unas condiciones óptimas ya que docker nos permite trabajar en cualquier entorno.

Como hemos comentado en las principales características, Docker nos permitirá ahorrar tiempo a la hora de hacer los testeos. Abrir un contenedor es tarea rápida, por lo tanto el tiempo que invertimos es prácticamente todo al testeo, sin largas esperas.

Un gran punto a tener en cuenta es que a la hora de desplegar un contenedor, trabajaremos que el sistema que hayamos definido nosotros, al cual le añadiremos la paquetería que consideremos necesaria y también podemos recurrir a versiones anteriores que se quedan almacenadas, para corregir errores o retroceder después de una modificación.

En la red podemos encontrar multitud de contenedores ya creados o diferentes links para obtener cualquier servicio o cualquier imagen que se nos pase por la cabeza; Ubuntu, un WordPress preinstalado, SUSELinux, un MySQL ya preconfigurado, etc… Así como imágenes destinadas al desarrollo.

Pero en cualquier caso, lo más aconsejable es que al principio se le dedique un poco más de tiempo en configurar tu propio contenedor, de forma que a la larga nos de más destreza y nos permita encontrar los problemas más fácilmente.

Esperemos que el artículo os haya servido de ayuda y que al igual que hacemos nosotros en Apiumhub, os animéis a usar docker para vuestros desarrollos.

 

Si te ha gustado este artículo sobre como usar docker, te puede interesar:

Los beneficios de la tecnología Scrum 

Beneficios de la tecnología Agil

Metodo Kanban Principios y Ventajas 

Beneficios de la integración contínua

Beneficios de TDD

Beneficios de la pruebas unitarias

Los elementos de las buenas pruebas de usuario 

La importancia de las retrospectivas en la metodología Ágil 

 

Suscríbete a nuestro newsletter para estar al día de los eventos, meet ups y demás artículos!