Brevo SMTP settings in self-hosted installation

AI-generated summary

The user chaefner encountered issues configuring Brevo SMTP for a self-hosted Discourse installation on elest.io, despite setting the correct host, port, username, and password. Initial attempts failed, with no emails being sent. itsbhanusharma suggested removing DISCOURSE_SMTP_AUTH=plain, but this didn’t resolve the issue. chaefner realized the problem was a missing environment variable in Docker Compose and a typo. After correcting these, the setup worked with the correct SMTP credentials: DISCOURSE_SMTP_HOST=smtp-relay.brevo.com, DISCOURSE_SMTP_PORT=587, DISCOURSE_SMTP_USER=LOGIN FROM BREVO, and DISCOURSE_SMTP_PASSWORD=SMTP KEY FROM BREVO chaefner.

Hi there, I have set up Discourse with elest.io which works great. However, I am having trouble setting up the email settings with Brevo (ex Sendinblue). I need a

  • Host
  • User
  • Password
  • Port

In den ENV Settings on elest.io, this is what I used:

DISCOURSE_SMTP_HOST=smtp-relay.brevo.com
DISCOURSE_SMTP_PORT=587
DISCOURSE_SMTP_USER_NAME=MY@LOGIN-EMAIL.COM
DISCOURSE_SMTP_PASSWORD=MY-BREVO-SMTP-KEY
DISCOURSE_SMTP_AUTH=plain

I replaced the password with my freshly created API SMTP key and the email with my SMTP login user from Brevo.

However, this is not working. No emails are sent out via Brevo. Any ideas how to approach or debug this?
Thanks!

I checked this guide, but I don’t know if the 4 information are sufficient to make it work. If anyone is using Brevo successfully here, please let me know.

is brevo instructing you to have this line? I believe this might be causing issues. Try commenting it an rebuild to see if that fixes the issue.

No, it is not required by Brevo. I have deleted it and tried again, but it still is not working.
I am wondering if “authentication=login” is correct. In the standard settings, there was no DISCOURSE_SMTP_PASSWORD variable. I added this myself.

This is what I see in the Discourse settings (Admin area)

These are the logs when clicking on “send test email”

Problem solved: I forgot to pass the variables in Doker compose + I had a type. Not it works with these variables:
DISCOURSE_SMTP_HOST=smtp-relay.brevo.com
DISCOURSE_SMTP_PORT=587
DISCOURSE_SMTP_AUTH=plain
DISCOURSE_SMTP_USER=LOGIN FROM BREVO
DISCOURSE_SMTP_PASSWORD= SMTP KEY FROM BREVO