WebAtypique
Docker··1 min de lecture

Mailhog : L'ajouter au docker-compose

Maintenant que nous avons vu comment installer Magento 2 en local avec Docker, nous allons lui ajouter Mailhog pour attraper et visualiser tous les e-mails partant de notre magento.

GL
Geoffrey LopezDéveloppeur Fullstack · Laravel & React
PartagerXin

Ajouter le service mailhog dans le docker-compose

Vous devez repérer la partie "services" de votre docker-compose et y implémenter ce code : 

Docker
1mailhog:
2 image: mailhog/mailhog:v1.0.1
3 ports:
4 - "1025:1025"
5 - "8025:8025"

On aura l'interface Mailhog sur le port 8025.

Lancer le container mailhog

Via votre IDE ou depuis un terminal, vous devez relancer vos containers (ou au moins le container mailhog) avec la commande : 

Bash
1docker-compose up

Vous aurez maintenant accès à Mailhog depuis votre navigateur sur http://localhost:8085/.

Screen de l'interface mailhog après l'avoir installé dans son container

Configurer Mailhog dans Magento

Via le backoffice

Rendez-vous dans le backoffice de magento dans Stores > Configuration > Advanced > System > Onglet Mail Sending Settings 

  • system/smtp/transport : smtp
  • smtp/configuration_option/host : mailhog
  • system/smtp/port : 1025
Configuration de Mailhog dans Magento

Penser à vider le cache dans System > Cache Management > Flush Magento Cache

Via le CLI

Dans le container magento dans le répertoire du projet (/bitnami/magento), vous pouvez lancez ces commandes :

Bash
1bin/magento config:set system/smtp/transport smtp
2bin/magento config:set system/smtp/host mailhog
3bin/magento config:set system/smtp/port 1025
4bin/magento cache:flush

Testez votre configuration

Allez sur votre page de contact, http://localhost/contact/index/ si vous avez suivi le tutoriel complet et tentez d'envoyer un email. Vous devriez avoir un message de succès et vous pourrez alors retrouver le contenu de votre email dans l'interface mailhog http://localhost:8025/ :

Contenu du mail test provenant de magento dans l'interface mailhog

Félicitations, vous pouvez à présent intercepter tous les emails provenant de votre magento ! Un pur plaisir pour debugger les envois d'emails transactionnels notamment.