Mailpit es una herramienta de email multiplataforma (con API) para testing y desarrollo. Mailpit se incluye en los servicios que despliega Sail, una interfaz de línea de comandos ligera que orquesta el entorno de desarrollo Docker predeterminado para Laravel
En alguna ocasión en una instalación limpia o al volver a usar Mailpit en un proyecto antiguo me he encontrado un error como este:
Symfony\Component\Mailer\Exception\TransportException
Connection could not be established with host "127.0.0.1:1025": stream_socket_client(): Unable to connect to 127.0.0.1:1025 (Connection refused)
at vendor/symfony/mailer/Transport/Smtp/Stream/SocketStream.php:154
debemos comprobar el mapeo de puertos en docker y la configuración del archivo .env de Laravel.
En mi caso la variable de entorno MAIL_HOST fallaba con los valores «localhost» y «127.0.0.1», y se arregla usando el nombre del servicio definido en docker-compose.yml: «mailpit».
Fragmento de docker-compose.yml:
mailpit:
image: 'axllent/mailpit:latest'
ports:
- '${FORWARD_MAILPIT_PORT:-1025}:1025'
- '${FORWARD_MAILPIT_DASHBOARD_PORT:-8025}:8025'
networks:
- sail
Fragmento de .env:
MAIL_HOST=mailpit
MAIL_PORT=1025
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
MAIL_MAILER=smtp
MAIL_FROM_ADDRESS="develop@localhost"
Deja un comentario