MailCatcher

robertomanchado

Roberto Manchado

Posted on January 4, 2019

MailCatcher

En ocasiones, debemos realizar pruebas de nuestros métodos o proyectos
en las que de alguna manera deberemos enviar un email.

Ya sea en un entorno de pruebas o de desarrollo, y en anteriores experiencias
el protocolo ha sido, crear un email ficticio y enviartelo a tu bandeja de entrada , ya
sea de email, protonmail, yahoo?,,,, etc.

Muy profesional.

Desde hace bien poco, vengo utilizando una herramienta , Mail Catcher, que
precisamente sirve para esto.
Se trata de un servidor SMTP que intercepta los mensajes de salida que enviemos al puerto
por defecto: http://127.0.0.1:1025 .

La forma de instalarlo, más cómoda es utilizando una imagen de Docker (Dockerfile) utilizando
un fichero .yml y docker-compose instalado. Esto es:

version: "3"
services:
  mailcatcher:
    restart: on-failure:10
    image: dockage/mailcatcher:0.7.1
    ports:
    - "1086:1080"
    - "1030:1025"

El puerto 1086 de nuestro host, se corresponderá con el 1080 del contenedor de Docker
y el 1030, se corresponderá con el 1025 del contenedor.

De forma que para poder enviar un email a esta bandeja de entrada "virtual" , podemos configurar
nuestro fichero .env ( suponiendo que trabajemos con symfony 4.^) de la siguiente manera:

###> symfony/mailer ###
MAILER_DSN=smtp://127.0.0.1:1030
###< symfony/mailer ###

Arrancamos el contenedor :

docker-compose up

Y ya podemos enviar nuestros emails, desde SwiftMailer , el componente Mailer de Symfony , PHP u otra herramienta para el envío de correos electrónicos, que serán interceptados por
MailCatcher y podremos visualizar lo que hemos enviado sin tener que utilizar correos electrónicos reales.

fdo: roberto manchado

💖 💪 🙅 🚩
robertomanchado
Roberto Manchado

Posted on January 4, 2019

Join Our Newsletter. No Spam, Only the good stuff.

Sign up to receive the latest update from our blog.

Related

MailCatcher
php MailCatcher

January 4, 2019