10 razones para utilizar DDEV como entorno local de desarrollo

El logo de DDEV sobre una pizarra

En los últimos años el entorno de trabajo local para un desarrollador ha cambiado mucho, especialmente convirtiéndose Docker en la herramienta principal. Pero la gestión de Docker no siempre es sencilla y en estos años han aparecido muchas herramientas para trabajar facilitar la gestión de los entornos locales con Docker. Una de las más conocidas es DDEV, desarrollada principalmente por Randy Fay, a continuación, vamos a ver 10 razones de peso por las cuales utilizar DDEV en nuestro entorno local para desarrollar.

Principales razones para usar DDEV

Veamos ahora algunas de las razones, no están en un orden especifico y se puede considerar que todas tienen la misma importancia, aunque dependiendo de nuestro perfil o preferencias algunas puedes tener mayor peso para decantarnos por esta fantástica herramienta.

Multiplataforma

DDEV soporta múltiples plataformas y en diferentes arquitecturas, además dispone de test automáticos para asegurar su funcionamiento en todas ellas. Las soportadas son las siguientes: Linux (AMD64 y ARM), Mac OS (M1 y AMD64), Windows 10 y WSL2.

Y no solo se distingue por el soporte de SO y arquitecturas, también en versiones de Docker, y es que algunas herramientas funcionan con una versión reducida de versiones, en cambio DDEV soporta una amplia variedad de versiones de Docker. Y como guinda, también soporta Colima por si queremos utilizar otro gestor de contenedores distinto.

Rendimiento

El rendimiento es algo muy importante en cualquier aplicación, y como eso es sabido en DDEV se preocupan por ello de modo que tratan de optimizar al máximo todos los procesos necesarios para que los desarrolladores no pierdan el tiempo.

Además, en algunas plataformas como Mac OS, se incluye soporte para Mutagen, el cual puede aumentar el rendimiento hasta 10 veces, lo cual es fantástico para los desarrolladores que prefieran ese sistema operativo.

Snapshots

DDEV viene con soporte para snapshots de la base de datos, lo cual facilita mucho el realizar backup antes de hacer pruebas con datos o incluso enviarle una snapshot a un compañero para que tenga exactamente lo mismo que nosotros. Como ventaja automáticamente se comprimen en gzip y es muy rápido restaurarlas, más incluso que realizando una importación o exportación.

Instalación y actualización sencilla

DDEV está escrito en Go, lo cual quiere decir que todo está empaquetado en un solo binario, no hay un paquete de instalación que contenga múltiples librerías ya que todo está encapsulado. De esa manera, actualizar DDEV es solo reemplazar un binario con el otro. En el caso de Linux existe un repositorio para facilitarnos aún más la actualización.

Xdebug

Cuando desarrollamos poder hacer debug es muy importante, por esta razón DDEV viene con Xdebug ya integrado y configurado para con un solo comando activarlo y tenerlo listo para funcionar. Además, si utilizamos PhpStorm y el plugin de DDEV, la integración es completamente automática.

Soporte nativo para CMS y frameworks

DDEV viene preconfigurado para soportar múltiples CMS o frameworks tales como Drupal, Wordpress o Laravel, pero también muchos otros y podemos consultar el listado para verlos todos. Aunque nuestro CMS o Framework de Php favorito no esté soportado, siempre hay una opción básica con la cual podremos configurar lo que queramos, ya sea Php, NodeJS y en el futuro Python.

Fácilmente ampliable

Cuando trabajamos con Docker podemos ampliarlo fácilmente con docker-compose, pues ddev tiene integración de manera que fácilmente podemos añadir más contenedores si los necesitamos. Pero esa es la opción manual, y es que existe un comando llamado "ddev get" el cual tiene acceso a una lista de imágenes de docker ya preparadas y preconfiguradas para funcionar sin necesidad de hacer nada.

Entorno listo en minutos

Una de las mayores ventajas de DDEV es que podemos tener un entorno para trabajar con PHP en cuestión de unos minutos y es que con un par de comandos podemos configurar cualquier CMS o Framework existente. Además, si metemos la carpeta de configuración del proyecto en el repositorio, otros compañeros de trabajo podrán tener nuestro mismo entorno.

La comunidad

Es algo que va creciendo poco a poco y van aportando y desarrollando, por ejemplo, han desarrollado un plugin para PhpStorm el cual integra muy bien Ddev con el mismo automatizando pequeñas configuraciones lo cual facilita y agiliza el trabajo.

Documentación

Es muy buena y tiene muchos ejemplos y bien descritos, además se preocupan de actualizarla constantemente lo cual facilita mucho el estar al dia y es que nunca nos va a faltar informacion sobre nuevos comandos.

 

Comparte este artículo:
Publicado por Borja
Image

Me metí en la aventura de Drupal con la versión 6, y aquí estoy, 10 años después, escribiendo articulos y haciendo videos sobre Drupal, quien me lo iba a decir. Aunque he probado otros framworks y cms, me quedo con Drupal de lejos, pero Symfony y Django estan entre mis favoritos. Aficionado a la montaña, la bicicleta, y el comer, de eso que no falte.