wordpress - 带有测试电子邮件环境的 Wordpress docker 容器
问题描述
是否有任何简单的方法可以使用带有环境的 docker 运行 Wordpress 来测试邮件?
我有一个运行WordPress和MariaDB的容器,我正在尝试将它连接到MailDev或类似环境以进行邮件测试。
我已经在 WordPress 容器中安装了 sendmail
apt-get install -y sendmail sendmail-bin mailutils
我正在使用插件WP Mail SMTP,我在其中设置了“其他 SMTP”选项。该插件会通知您邮件已发送,但 MailDev 中没有显示任何内容。
有什么解决方案可以在本地测试电子邮件吗?
解决方案
如果您在 Ubuntu 环境中,我强烈建议您使用 Mailcatcher 来排除故障并捕获所有电子邮件。它基本上提供了一个不错的 GUI Web 界面,供您查看从您的服务器发送的所有电子邮件。
# Install dependencies
# older ubuntus
#apt-get install build-essential libsqlite3-dev ruby1.9.1-dev
# xenial
apt install build-essential libsqlite3-dev ruby-dev
# Install the gem
gem install mailcatcher --no-ri --no-rdoc
# Make it start on boot
echo "@reboot root $(which mailcatcher) --ip=0.0.0.0" >> /etc/crontab
update-rc.d cron defaults
# Make php use it to send mail
# older ubuntus
#echo "sendmail_path = /usr/bin/env $(which catchmail) -f 'www-data@localhost'" >> /etc/php5/mods-available/mailcatcher.ini
# xenial
echo "sendmail_path = /usr/bin/env $(which catchmail) -f 'www-data@localhost'" >> /etc/php/7.0/mods-available/mailcatcher.ini
# Notify php mod manager (5.5+)
# older ubuntus
#php5enmod mailcatcher
# xenial
phpenmod mailcatcher
# Start it now
/usr/bin/env $(which mailcatcher) --ip=0.0.0.0
推荐阅读
- javascript - 我正在尝试使用一些带有 codeceptjs 的本机 puppeteer 来使用其 ID 查找元素的所有方面
- c - 如何将 32 位打包成 4x8 位?
- c++ - 从源代码构建 UE4 - Mathcalls 语法错误
- sql - plpgsql 函数会产生巨大的性能开销
- php - 如何在 magento 2 phpunit 测试中进行依赖注入
- php - 未定义索引:PHP 7.2.1 中的 file_upload
- sql-server - 如何在非常大的表中获取最大日期的列名
- swift - 我希望我已经登录的用户拥有我的 ViewController3 作为 rootViewController,而那些没有登录的用户拥有 ViewController2
- php - 使用保存的字符串作为对象内容的目标
- android - 如何从 MediaCodec 获取解码格式?