Configura tu entorno de desarrollo para el desarrollo Drupal con DDEV

Published on
Tiempo de lectura: 5 min
––– visitas
thumbnail-image

Como usamos Windows para el desarrollo de software en el trabajo, mi primera experiencia con Drupal fue con XAMPP. No me gustaba usar XAMPP o WAMP, principalmente porque uso MacOS desde 2018 para programar.

En mi Macbook, tengo montado un LEMP. Tuve que instalar todo manualmente, pero me gustó; Es rápido y tengo control total sobre ello. Utilicé Homebrew para instalar todo y tenía algunos scripts para iniciar/detener/reiniciar los servicios.

Usar XAMPP fue como regresar a la edad de piedra; extenderlo fue una molestia y tuve que usar muchas soluciones para que todo funcionara, sin mencionar a la instalacion de SSL, tiempos de carga lentos y ejecución.

TL;DR: XAMPP es un rollo y no lo recomiendo; Además, PHP para Windows no es PHP para Linux.

P.D: ejecutar PHPStan desde la linea de comandos de Windows elimina mis archivos; Tuve que pasar por esto varias veces para descubrir qué estaba pasando. Si no fuera por Git, habría perdido mucho trabajo.

Así que aquí estaba yo con un nuevo proyecto, descargando un archivo zip que contenía Drupal, extrayéndolo e instalándolo a través del navegador; Con el paso del tiempo, comencé a buscar alternativas y, poco a poco, encontré DDEV.

Sé que existen otras alternativas como Lando. Pero no me gustó demasiado.

Entonces, como dice en su sitio web, DDEV es un entorno de desarrollo PHP basado en Docker Es muy fácil de configurar y, una vez configurado por primera vez, no es necesario hacer muchos retoques para añadir servicios.

Requisitos previos

Para configurar DDEV, necesitas Docker; Ya sea en Windows, macOS o Linux, hay una solución. En nuestro caso Usaremos WSL2 y Docker CE (Docker Community Edition).

¿Por qué WSL2 y Docker CE?

Con WSL2, tendremos un entorno Linux en Windows; Precisamente tendremos funcionando Ubuntu 18.04, con su sistema de archivos, y podremos ejecutar comandos de Linux desde la Terminal de Windows.

La terminal de Windows es una nueva terminal que Microsoft lanzó en 2019; Es una terminal moderna que admite múltiples pestañas y múltiples shells.

Entonces, ¿por qué Docker CE y no Docker Desktop? Simplemente, Porque es gratis.

Instalando WSL2

De la Wikipedia: WSL 2 requiere Windows 11 o Windows 10 versión 1903 o superior, con compilación 18362 o superior, para sistemas x64, y versión 2004 o superior, con compilación 19041 o superior, para sistemas ARM64.

Abre el menú Inicio, escribe "Activar o desactivar las funciones de Windows" y presiona Enter. Aparecerá una nueva ventana y verás un montón de casillas de verificación, marca las siguientes casillas:

  • Hyper-v
  • Windows Hypervisor Platform
  • Windows Subsystem for Linux
  • Virtual Machine Platform

Presiona Aceptar y reinicia.

Después de reiniciar, abre Microsoft Store, busca "Terminal" e instalalo.

Ahora necesitamos instalar Ubuntu 18.04. Para hacerlo, abre la terminal, escribe wsl --install -d Ubuntu-18.04 y presiona Enter.

Esto descargará e instalará Ubuntu 18.04 y te pedirá que crees un nombre de usuario y contraseña. Una vez instalado, iniciará sesión automáticamente y podrás ejecutar comandos de Linux.

Salte del shell bash y ejecuta wsl -l -v. Si ves versión 1, deberás convertir tu instalación de Ubuntu para usar WSL2. Es tan simple como ejecutar wsl --set-version Ubuntu-18.04 2 y presionar enter. Tomará un poco de tiempo.

Nota: necesitas ejecutar wsl desde la terminal de Windows para acceder a tu instalación de ubuntu.

Instalación de Docker CE

Gracias a DDEV Docs, instalar Docker CE es bastante simple.

  1. Abre tu terminal o PowerShell con privilegios administrativos y ejecuta el siguiente comando:
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072;
iex ((New-Object System.Net.WebClient).DownloadString('https://raw.githubusercontent.com/ddev/ddev/master/scripts/install_ddev_wsl2_docker_inside.ps1'))

¡Y eso es! WSL2 + Docker CE están instalados.

(Opcional) Personaliza tu terminal instalando Zsh y Oh My Zsh

Esto depende de ti, pero a mí me gusta personalizar mi terminal y usar Zsh y Oh My Zsh. Sigue las instrucciones en mi publicación anterior.

Crear un Drupal con DDEV

¿OK listo? Ejecutando solo unos comandos, tendremos un proyecto Drupal, una base de datos, un servidor web, node.js y un servidor mailhog; ¿Acaso no eso genial?

Dentro de tu instalación de Ubuntu, ejecuta los siguientes comandos:

mkdir ~/Sites/my-awesome-drupal-project
cd ~/Sites/my-awesome-drupal-project
ddev config --project-type=drupal9 --docroot=web --create-doc root
ddev composer create drupal/recommended-project:^9
ddev composer require drush/drush:10.6.2
ddev drush site:install --account-name=admin --account-pass=admin -y
ddev drush uli

¡Eso es todo! Se abrirá una nueva ventana en tu navegador accediendo automaticamente como Administrador al panel de control de Drupal.

Drush es una herramienta de línea de comandos que te permite hacer muchas cosas, como instalar Drupal, crear usuarios, borrar caché, etc.


¡Y eso es todo por hoy! Espero que hayas encontrado esta publicación útil. Si tiene alguna pregunta, comuníquese conmigo en LinkedIn.

¡Happy Coding!