Symfony 4 et Docker

Par CedLP, il y a 7 ans


Bonjour à tous et joyeuse paque

je reviens pour demander si quelqu'un a déjà utiliser docker avec symfony 4. Au fait tous marche bien sauf sur la configration de maildev.
Dans mon docker-compose.yml j'ai le code suivant:

maildev: image: djfarrelly/maildev container_name: inlinesd_maildev ports: - 8181:80

Je precise que tous s'affiche correctement, cependant quand je test l'envoie avec php bin/console swiftmailer:email:send, j'ai l'erreur suivante:

Exception occurred while flushing email queue: Connection could not be established with host 192.168.1.152 [Connection refused #111]

Dans le .env j'ai

MAILER_URL=smtp://maildev:25 ou bien MAILER_URL=smtp://maildev: 8181 ou bien MAILER_URL=smtp://maildev:80

j'ai tous tester mais rien ne marche
Si quelqu'un peut m'aider merci beaucoup

9 réponses

GallandJe, il y a 7 ans

Salut,

MAILER_URL=smtp://inlinesd_maildev:25

C'est le container_name qui fait foi ;)
Par contre, le port SMTP est le 25, le 80 c'est l'accès web à maildev.

CedLP, il y a 7 ans

Salut Gallandje,

on faisant ce que tu m'a dit l'erreur est devenue
2 ERROR [app] Exception occurred while flushing email queue: Connection could not be established with host inlinesd_maildev [php_network_getaddresses: getaddrinfo failed: Name or service not known #0]

GallandJe, il y a 7 ans

Dans ton docker-compose.yml tu as bien :

link: - maildev

Dans les configuration du container Symfony ?

CedLP, il y a 7 ans

Dans mon dockr-compose y a ces codes

version: '2' services: postgres: image: postgres container_name: inlinesd_postgres ports: - '5433:5432' environment: POSTGRES_DB: ISD POSTGRES_USER: ISD2019 POSTGRES_PASSWORD: Zr264RTxgHjt45 php: build: docker/php-fpm container_name: inlinesd_php ports: - '9002:9000' volumes: - ../:/var/www/inlinesd:cached - ./logs/symfony:/var/www/inlinesd/var/logs:cached links: - postgres - maildev environment: - maildev_host=inlinesd_maildev depends_on: - maildev nginx: build: docker/ngnix container_name: inlinesd_nginx ports: - '8080:80' links: - php volumes_from: - php volumes: - ./logs/nginx/:/var/log/nginx:cached admin: image: adminer container_name: inlinesd_admin depends_on: - postgres restart: always ports: - '2025:8080' maildev: image: djfarrelly/maildev ports: - 25:25 - 1080:80
GallandJe, il y a 7 ans

Il manque le

container_name: inlinesd_maildev

Dans la partie maildev.
Je te laisse le rajouter et me faire un retour :)

CedLP, il y a 7 ans

Pour le Docker-compose

maildev: image: djfarrelly/maildev container_name: inlinesd_maildev ports: - 25:25 - 1080:80

et dans le .env

MAILER_URL=smtp://inlinesd_maildev:25

Error
[app] Exception occurred while flushing email queue: Connection could not be established with host inlinesd_maildev [php_network_getaddresses: getaddrinfo failed: Name or service not known #0]

GallandJe, il y a 7 ans

Ah je sais ! J'ai eu le même problème hier, c'est le _ qui pose problème en fait. Rennome ton container et ça devrait fonctionner

container_name: maildev MAILER_URL=smtp://maildev:25
CedLP, il y a 7 ans

ça n'a rien changer :(
le truc qui est con c'est que si je fais juste

$ npm install -g maildev $ maildev

Bah le Maildev il marche très bien mais c'est vraiment la configuration de docker qui est pas bon?
dit moi dans ton dossier docker tu a un dossier maildev avec un dockerfile?

Tu peux me montrer comment tu as fait avec ton code ?

CedLP, il y a 7 ans

c'est bon j'ai pu tous resoudre, j'ai modifier le fichier dockerfile de maildev et tous a marché ouf :D
n'empeche Merci de ton aide GallandJe :)
c'est sympa voila le fichioer docker file

FROM node:6-alpine ENV NODE_ENV production RUN mkdir -p /usr/src/app WORKDIR /usr/src/app ADD package.json /usr/src/app/ RUN npm install -g maildev && \ npm prune && \ npm cache clean \ rm -rf /tmp/* ADD . /usr/src/app/ EXPOSE 80 25 CMD ["maildev", "--web", "80", "--smtp", "25"]

Et c'est ça que il faut builder