fbpx
Docker y el desarrollo web
09/07/21
Carlos A.

Hoy os queremos hablar de uno de los mejores compañeros que un desarrollador puede tener, ni más ni menos que Docker.

Tradicionalmente, un desarrollador ejecutaba la aplicación entera en un portátil. Hacerlo así trae múltiples problemas, como largos tiempos de configuración inicial e incompatibilidades cuando se trabaja en múltiples proyectos.

¿Qué es Docker?

Docker es un proyecto de código abierto iniciado en 2013 que automatiza el despliegue de aplicaciones dentro de contenedores de software. A su vez permite empaquetar, distribuir y administrar ese contenedor y la aplicación que se encuentra dentro de él. Originalmente construido para Linux, ahora funciona también en Windows y MacOS.

Su objetivo principal es la automatización máxima para el despliegue de aplicaciones en el interior de los llamados contenedores de software.

¿Qué es un contenedor?

Este concepto ya es antiguo, y viene de Linux, pero por hacerte un símil con el mundo real, imagina un contenedor de los que suelen llevar los barcos de mercancías, que contiene distintos productos.

Los contenedores ofrecen un mecanismo de empaquetamiento lógico en el que las aplicaciones pueden abstraerse del entorno en el que realmente se ejecutan. Este desacoplamiento permite que las aplicaciones basadas en contenedores se implementen de manera fácil y consistente, independientemente de si el entorno objetivo es un centro de datos privado, la nube pública o incluso el ordenador portátil personal de un desarrollador. Esto brinda a los desarrolladores la capacidad de crear entornos predecibles que están aislados del resto de las aplicaciones y que se pueden ejecutar en cualquier lugar.

Aquí os mostramos una lista con los contendores más populares del Marketplace de Docker (todos ellos con más de 10 Millones de descargas):

  • Nginx
  • Alpine
  • Postgres
  • Redis
  • Ubuntu
  • MySql
  • Traefik

Con el uso de Docker, los desarrolladores pueden centrarse solo en su código sin tener que preocuparse de si dicho código funcionará en los entornos de producción, además nos permite tener un control sobre cada una de las fases de desarrollo de nuestro producto, con lo que nos aseguramos unos altos estándares de calidad en nuestros desarrollos.

Docker es necesario para:

  • Realizar desarrollos más ágiles.
  • Despliegues automatizados.
  • Ciclos de desarrollo más rápidos.
  • Auto-escalado horizontal.
  • ¡Porque mola!

Como en todo proceso de cambio, con la implantación de Docker también tenemos una curva de aprendizaje. Pero ese tiempo no cae en saco roto, ya que supondrá un ahorro bastante interesante en todos los departamentos que participan en el desarrollo de software. Por tanto, si podemos hacer lo mismo pero en menos tiempo, ya es un motivo fundamental para utilizar este software.

A esto hay que sumarle más seguridad y menos costes de hardware. Efectivamente, esa inversión al poco tiempo está más que amortizada.

Unos pocos datos sobre el uso de Docker:

  • 242 mil millones de descargas en su Marketplace (cada año aumenta unos 5,5 mil millones)
  • 7 millones de repositorios
  • 7 millones de usuarios totales

El uso de Docker siempre queda a elección de cada uno, pero pensar que ya tienes todo tipo de arquitecturas ya definidas por expertos y que ya han sido probadas por miles de personas es una característica muy importante para tener muy en cuenta su uso.

Si tuviéramos que definir este software en una frase diríamos:

“Crea elementos que realicen una sola tarea pero que la hagan a la perfección y con muy pocos recursos”

Y tú, que estás leyendo este post, ¿Nos podrías decir cuáles son los contenedores que más usas en tus desarrollos?

Nuestros clientes

IBM Registered Business Partner

info@ivorysoluciones.com
981 299 758
Río de Monelos, 22, 1D
15006 A Coruña

Logotipo Ivory Soluciones monocromo en blanco
IBM Registered Business Partner
Río de Monelos, 22, 1D
15006 A Coruña
Logotipo Ivory Soluciones monocromo en blanco

Pin It on Pinterest

Share This