Volver al Blog

Cómo configurar un sitio de WordPress o Drupal localmente con ddev

2021-12-224 min de lectura

DDEV es una herramienta de código abierto que permite configurar sitios locales utilizando Docker, rápidamente. No necesitas conocer conceptos complejos sobre Docker para tener tus sitios locales de WordPress o Drupal funcionando. Puedes consultar su documentación oficial aquí https://ddev.com/get-started/ y aquí https://ddev.readthedocs.io/en/stable/

Los pasos/comandos que se enumeran a continuación son los que más he necesitado, así que estoy moviendo esta nota a la web como referencia para mí, en el futuro, o para ayudar a otros que puedan necesitarla.

Cómo instalar DDEV

  1. Instala Homebrew, siguiendo los pasos en: https://brew.sh/
  2. Asegúrate de tener Docker instalado. Puedes seguir los pasos en este enlace si no estás seguro de cómo hacerlo.
  3. Instala ddev (MAC): brew install drud/ddev/ddev
  4. Necesitas ejecutar ddev config una vez por proyecto para configurarlo. Ejecuta esto desde la carpeta donde planeas tener todos los archivos relacionados con el proyecto. Te hará tres preguntas:
    1. ¿Cuál es el nombre del sitio?
      • Recomiendo que elijas una palabra fácil de recordar. Se utilizará para el dominio local que tendrás que usar para abrir el sitio en el navegador. Ejemplo: Si eliges localsite como nombre del proyecto, accederás al sitio desde el navegador usando https://localsite.ddev.site/ 
    2. ¿Cuál es la ubicación del docroot?
      1. Esta es la carpeta donde clonaste o planeas clonar los archivos del proyecto. Recomiendo crear una carpeta llamada web en la misma carpeta desde donde ejecutas el comando ddev config del paso 1. 
    3. ¿Qué tipo de proyecto es? Como Drupal, PHP, WordPress, etc.
  5. Necesitas ejecutar ddev start para tener el proyecto en funcionamiento. Puedes ejecutar el comando desde fuera de la carpeta si recuerdas el nombre del proyecto.
  6. ¿Quieres importar una base de datos? Puedes ejecutar ddev import-db –file=dumpfile.sql.gz desde el directorio del proyecto. Borrará la base de datos antes de importar la nueva copia de seguridad de la base de datos.
  7. ¿Qué pasa si necesitas ejecutar comandos de composer, drush o wp-cli? Deberías ejecutar ddev ssh
  8. ¿Tienes un error y necesitas ver los logs? Deberías ejecutar: ddev logs -f
  9. He necesitado ejecutar este comando antes de poder ejecutar drush en algunos de mis proyectos de Drupal: ddev composer require drush/drush
  10. ¿Necesitas obtener la URL de los sitios, el puerto o comprobar si los servicios están activos? ddev describe te dará esa información.
  11. Si necesitas que tus sitios locales usen https, deberías ejecutar: mkcert -install
  12. ¿Necesitas depurar código PHP con xdebug? Necesitarás ejecutar ddev xdebug para habilitarlo. ddev xdebug off lo desactivará de nuevo.
  13. Estás en Mac y tus sitios locales son muy lentos, deberías ejecutar ddev config global –mutagen-enabled y habilitará mutagen globalmente. Notarás la diferencia inmediatamente.
  14. Si seguiste el paso 12 y necesitas actualizar muchos archivos (¿quizás actualizando plugins o módulos?), mutagen puede tardar en detectar los archivos actualizados, por lo que es posible que necesites ejecutar ddev mutagen sync para acelerar el proceso de sincronización.
  15. Necesitas probar tu sitio con una versión diferente de PHP, así que puedes usar ddev config –php-version 8.0 8.0 puede ser cualquier versión de PHP que necesites.
  16. Para instalar memcached:
    1. En la última versión de ddev necesitarás ejecutar: ddev get drud/ddev-memcached && ddev restart
    2. Para WordPress, en el wp-config.php, necesitarás añadir las siguientes líneas:
/**
 * Configuración de Memcache.
 */
$memcached_servers = [
    'default' => [
        'ddev-YOUR_PROJECT_NAME-memcached:11211',
    ]
];

# reemplaza la clave por proyecto y mantenla en git
define( 'WP_CACHE_KEY_SALT', 'random_cache_key_salt' );