Mailpit es una herramienta ligera y de código abierto que permite capturar y visualizar los correos electrónicos enviados desde aplicaciones durante el desarrollo. DDEV incluye Mailpit de forma integrada, por lo que no es necesario instalarlo ni crear manualmente un contenedor adicional. Esto facilita enormemente las pruebas de envío de email en proyectos Drupal 11, evitando el uso de servidores externos y permitiendo revisar fácilmente el contenido de los mensajes.
Requisitos previos
- Instancia de DDEV configurada y en funcionamiento.
- Proyecto Drupal 11 funcionando dentro del entorno DDEV.
- Docker instalado y funcionando, ya que DDEV utiliza Docker para gestionar el entorno local.
1. Comprobar Mailpit en DDEV
No es necesario instalar Mailpit manualmente ni añadir ningún servicio a .ddev/docker-compose.base.yaml. DDEV incluye Mailpit como herramienta de desarrollo y lo pone a disposición automáticamente al iniciar el proyecto.
Puedes comprobar la información del proyecto ejecutando:
ddev describeEn la información mostrada por DDEV aparecerá la URL de Mailpit. También puedes abrir directamente su interfaz web con:
ddev mailpitDDEV abrirá Mailpit en el navegador utilizando la URL correspondiente al proyecto. De forma predeterminada, la interfaz HTTPS de Mailpit utiliza el puerto 8026, aunque DDEV gestiona automáticamente la URL y el puerto de acceso.
2. Configurar Drupal para enviar correos a Mailpit
Si Drupal utiliza el sistema de correo que DDEV configura para el entorno de desarrollo, no es necesario realizar ninguna configuración SMTP adicional. DDEV proporciona la integración necesaria para que los correos generados por Drupal puedan ser capturados por Mailpit.
Si, en cambio, utilizas un módulo SMTP como SMTP Authentication Support, debes configurar el servidor SMTP para utilizar Mailpit. El módulo es compatible con Drupal 11 y permite enviar los mensajes mediante SMTP.
En ese caso, utiliza los siguientes valores:
- Servidor SMTP:
localhost - Puerto SMTP:
1025 - Seguridad: ninguna
- Autenticación: no necesaria
Si quieres establecer la configuración mediante código con el módulo SMTP, puedes utilizar:
$config['smtp.settings']['smtp_on'] = TRUE;
$config['smtp.settings']['smtp_host'] = 'localhost';
$config['smtp.settings']['smtp_port'] = '1025';
$config['smtp.settings']['smtp_protocol'] = 'standard';
$config['smtp.settings']['smtp_username'] = '';
$config['smtp.settings']['smtp_password'] = '';El puerto 1025 es el puerto SMTP que DDEV utiliza para Mailpit. No necesitas configurar usuario, contraseña ni TLS para realizar pruebas locales.
3. Probar el envío de correo
Una vez configurado el sistema de correo, puedes generar un email desde Drupal. Por ejemplo:
- Crear un nuevo usuario.
- Solicitar la recuperación de una contraseña.
- Enviar un formulario de contacto.
- Ejecutar cualquier otra acción que genere un correo electrónico.
Después, abre Mailpit con:
ddev mailpitEl mensaje enviado desde Drupal debería aparecer automáticamente en la bandeja de entrada de Mailpit.
Desde la interfaz podrás consultar el destinatario, remitente, asunto, contenido HTML, versión de texto plano y encabezados del mensaje. Esto resulta especialmente útil para comprobar que los correos de Drupal se generan correctamente antes de utilizar un servidor de correo real.
4. Comprobar la configuración de Mailpit
Si el correo no aparece en Mailpit, lo primero es comprobar que el proyecto DDEV está funcionando correctamente:
ddev statusSi utilizas SMTP, comprueba especialmente que la aplicación esté apuntando a:
Host: localhost
Port: 1025Ten en cuenta que Mailpit no intercepta automáticamente los mensajes cuando la aplicación está configurada para utilizar un servidor SMTP externo o un servicio de email de terceros. En esos casos, debes configurar explícitamente el SMTP de la aplicación para utilizar localhost:1025.
5. Acceso y puertos de Mailpit
DDEV gestiona automáticamente los puertos utilizados por Mailpit. Por defecto, el acceso HTTPS de Mailpit utiliza el puerto 8026 y el acceso HTTP utiliza el 8025. Estos valores pueden modificarse mediante la configuración de DDEV si fuera necesario.
Por este motivo, no es recomendable asumir que Mailpit estará disponible directamente en http://localhost:8025. La forma más sencilla y fiable de acceder a él es utilizar:
ddev mailpitTambién puedes consultar la URL exacta proporcionada por DDEV mediante:
ddev describe6. No utilizar Mailpit en producción
Mailpit está pensado para entornos de desarrollo y pruebas. Los mensajes capturados no se entregan a sus destinatarios reales, por lo que no debe utilizarse como sistema de correo para un sitio web en producción.
En producción, Drupal debe utilizar un servidor SMTP o un servicio de correo transaccional real que se encargue de entregar los mensajes a los destinatarios.
Con estos pasos, puedes utilizar Mailpit con DDEV y Drupal 11 para probar de forma segura los emails generados durante el desarrollo. No necesitas instalar Mailpit manualmente ni crear contenedores adicionales: DDEV ya proporciona la integración y solo tendrás que configurar el SMTP de Drupal cuando utilices explícitamente un sistema de envío basado en SMTP.