dbarzin / mercator

Mapping the information system / Cartographie du système d'information
GNU General Public License v3.0
243 stars 39 forks source link

Impossible de tester l'envoi de mail #838

Open krptg0 opened 1 day ago

krptg0 commented 1 day ago

Bonjour,

Lors du déploiement de mercator, nous avons setté les variables d'env MAIL* afin de correspondre à notre setup.

Cela dit, lorsqu'un test de mail est réalisé depuis la page "CVE" bouton "Test Mail", l'erreur suivante apparaît dans les logs :

mercator-75c7b45b54-rknwr:mercator sendmail: Cannot open mail:25

La seule référence trouvée de "mail" est dans le fichier /etc/ssmtp/ssmtp.conf, qui contient la config par défaut pour sendmail. Cela fait sens, mais cela explique également que la librairie mailer utilisée ne semble pas reprendre les variables et les interpréter pour ensuite appeler sendmail.

Merci d'avance,

PS: nous utilisons l'image Docker sans modifications

dbarzin commented 1 day ago

C'est la fonction mail de php qui est utilisée pour envoyer des mails. Cette fonction appelle la commande sendmail. sendmail n'est as configuré dans l'image docker qui est fournie.

J'ai trouvé ceci pour la configuration de sendmail dans une image docker :

FROM php:7-fpm

RUN apt-get update && \
    apt-get install -y \
        zlib1g-dev libzip-dev sendmail

RUN echo "sendmail_path=/usr/sbin/sendmail -t -i" >> /usr/local/etc/php/conf.d/sendmail.ini 

RUN docker-php-ext-install pdo_mysql
RUN docker-php-ext-install zip

RUN sed -i '/#!\/bin\/sh/aservice sendmail restart' /usr/local/bin/docker-php-entrypoint
RUN sed -i '/#!\/bin\/sh/aecho "$(hostname -i)\t$(hostname) $(hostname).localhost" >> /etc/hosts' /usr/local/bin/docker-php-entrypoint

# And clean up the image
RUN rm -rf /var/lib/apt/lists/*