我已将 Directus 安装在运行于 Linode 实例上的 Docker 容器中。我尝试使用 SMTP 作为方法从 Directus 实例发送电子邮件,但收到错误。
在尝试触发此端点时,我非常需要有关此错误的帮助:
https://domain/directus/auth/password/request
错误:
POST /auth/password/request 204 102ms
WARN: [email] Error: write EPIPE
err: {
"type": "Error",
"message": "write EPIPE",
"stack":
Error: write EPIPE
at afterWriteDispatched (node:internal/stream_base_commons:160:15)
at writeGeneric (node:internal/stream_base_commons:151:3)
at Socket._writeGeneric (node:net:962:11)
at Socket._write (node:net:974:8)
at writeOrBuffer (node:internal/streams/writable:392:12)
at _write (node:internal/streams/writable:333:10)
at Writable.write (node:internal/streams/writable:337:10)
at LastNewline.ondata (node:internal/streams/readable:777:22)
at LastNewline.emit (node:events:517:28)
at addChunk (node:internal/streams/readable:335:12)
"errno": -32,
"code": "EPIPE",
"syscall": "write"
}
SMTP 的 docker-compose.yml 配置
EMAIL_SMTP_HOST: "hostname"
EMAIL_SMTP_PORT: "465"
EMAIL_SMTP_USER: "user@website"
EMAIL_SMTP_PASSWORD: "password"
EMAIL_SMTP_POOL: "true"
EMAIL_SMTP_SECURE: "true"
EMAIL_SMTP_IGNORE_TLS: "false"
EMAIL_SMTP_NAME: "hostname"
有人知道如何调试这个问题吗?
我找到了解决方案。
如果您遇到同样的问题,这里是我在尝试为在 Docker 上运行的 Directus 设置 SMTP 时错过的两个 Directus 配置选项。
EMAIL_TRANSPORT: "smtp"
EMAIL_FROM: "[email protected]
将这些添加到您的 docker-compose.yml 文件中,您的 SMTP 连接应该可以正常工作。