Docker-Compose WordPress: wp_mail () не работает

Я запускаю установку WordPress в Docker-контейнере с изображением WordPress (https://hub.docker.com/_/wordpress/). Моя проблема в том, что я не могу отправлять письма через wp_mail() или с PHP mail(),

Когда я пытаюсь позвонить mail()-функция Я получаю «Внутренняя ошибка сервера».

Что я могу сделать? Нужен ли внешний почтовый сервер?

Мой docker-compose.yml:

wordpress:
image: wordpress
container_name: shk_wordpress
links:
- mariadb:mysql
environment:
- WORDPRESS_DB_PASSWORD=admin
ports:
- "8000:80"volumes:
- ./app:/var/www/html
- ./theme/:/var/www/html/wp-content/themes/shk-theme
mariadb:
image: mariadb
container_name: shk_mariadb
environment:
- MYSQL_ROOT_PASSWORD=admin
- MYSQL_DATABASE=wordpress
volumes:
- ./database:/var/lib/mysql
phpmyadmin:
image: phpmyadmin/phpmyadmin
container_name: shk_phpmyadmin
environment:
- PMA_ARBITRARY=1
- MYSQL_USER=root
- MYSQL_PASSWORD=admin
- MYSQL_ROOT_PASSWORD=admin
ports:
- "9000:80"links:
- "mariadb:mysql"

1

Решение

Похоже, что эта проблема уже обсуждалась в репозитории WP Docker.
Оформить заказ на этот ответ
Github

Далее вы можете найти другие решения вашей проблемы, если она не работает.

0

Другие решения

Шаг 1 :

В вашем docker-compose.yml замените

image: wordpress

от

build: .

Шаг 2 :

Создать Dockerfile:

FROM wordpress
RUN apt-get update
RUN apt-get install -y ssmtp
RUN echo "sendmail_path = /usr/sbin/ssmtp -t" >> /usr/local/etc/php/conf.d/sendmail.ini
RUN sed -i -e 's/mailhub=mail/mailhub=[IP RELAY SERVER]/' /etc/ssmtp/ssmtp.conf
RUN sed -i -e 's/#rewriteDomain=/rewriteDomain=[IP RELAY SERVER]/' /etc/ssmtp/ssmtp.conf
RUN sed -i -e '/hostname=/d' /etc/ssmtp/ssmtp.conf

Шаг 3 :
Заменить [IP RELAY SERVER]

0

По вопросам рекламы [email protected]