¿Cómo enviar correos electrónicos desde WordPress (formularios de contacto) en el contenedor Docker?

2 minutos de lectura

avatar de usuario
vadim shvetsov

Tengo un pequeño problema con la imagen de WordPress, agradeceré cualquier ayuda.

Tengo una base de datos existente, que importo con volcado.

Mi lista Dockerfile de Mysql a continuación:

FROM mariadb:10.1.20

COPY dump/dump.sql /docker-entrypoint-initdb.d

ENV MYSQL_ROOT_PASSWORD pass

CMD ["mysqld"]

Este es WordPress Dockerfile, aquí importo mi carpeta wp-content desde el directorio src:

FROM wordpress:latest

COPY ./src /var/www/html

ENV WORDPRESS_DB_PASSWORD pass
ENV WORDPRESS_DB_NAME db
ENV WORDPRESS_DB_HOST mysql:3306

Y, por supuesto, el archivo docker-compose.yml:

version: '2'

services:
  mysql:
    build: mysql/
    restart: always
    volumes:
      - db_data:/var/lib/mysql
    container_name: mysql
  vshvetsov:
    depends_on:
      - mysql
    build: wordpress/
    ports:
      - 8000:80
    restart: always
    container_name: wordpress
volumes:
    db_data:

Cuando uso el complemento Contact Form 7, aparece un error al enviar un correo electrónico después de hacer clic en el botón y, por supuesto, no recibo este mensaje en mi buzón.

Lo único que he encontrado es este mensaje:

172.18.0.1 - - [13/Jan/2017:13:52:42 +0000] "POST /const HTTP/1.1" 200 879 "http://localhost:8000/contacts" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.95 Safari/537.36"
sh: 1: -t: not found

Intenté instalar sendmail, pero aún así no ayudó.

Gracias a todos por la ayuda.

Yo vi este problemapero no está arreglado en este momento.

  • Espero que este comentario ayude de alguna manera: github.com/docker-library/php/issues/135#issuecomment-277199026

    – Charaf

    3 de febrero de 2017 a las 9:12

  • Alguna noticia sobre esto ?

    – Vicente Guyader

    14 de agosto de 2017 a las 19:47

  • ¿Hay noticias? es una pregunta muy típica sobre docker + wordpress

    – Ángel Carlos del Pozo Muela

    30/01/2019 a las 23:00

avatar de usuario
el_pingu

Puede instalar ssmtp, como en:
https://github.com/xgodon/RIG/blob/master/dockerized-apps/wordpress/Dockerfile

solo necesita un archivo ssmtp.conf como

mailhub=smtp.gmail.com:587
AuthUser=xxx@mail.com
AuthPass=
UseSTARTTLS=YES
# Allow the "From" email header.
FromLineOverride=YES

hay un retraso (porque no hay un nombre de host calificado) en el envío, pero aquí está la solución:
https://www.digitalocean.com/community/questions/sendmail-is-slow-to-send-mail

Actualizaré el Dockerfile pronto.

¿Ha sido útil esta solución?