discourse/docs/INSTALL-email.md

2.2 KiB

We strongly recommend using a dedicated email service. Email server setup and maintenance is very difficult even for experienced system administrators, and getting any part of the complex required email setup wrong means your email won't be delivered, or worse, delivered erratically.

The following are template configurations for email service providers who offer generous free plans that work for most communities.

Use these values when you edit your Discourse app.yml configuration file:

SparkPost (100k emails/month)

DISCOURSE_SMTP_ADDRESS: smtp.sparkpostmail.com
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: SMTP_Injection
DISCOURSE_SMTP_PASSWORD: [Any API key with Send via SMTP permission]

If not using the exact domain you verified (e.g. you're using a subdomain of it), you must change the default from email to match the sending domain. Uncomment (and update with your sending domain) this line in app.yml:

- exec: rails r "SiteSetting.notification_email='info@unconfigured.discourse.org'"

SendGrid (12k emails/month)

DISCOURSE_SMTP_ADDRESS: smtp.sendgrid.net
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: apikey
DISCOURSE_SMTP_PASSWORD: [SendGrid API Key]

We recommend creating an API Key instead of using your SendGrid username and password.

Mailgun (10k emails/month)

DISCOURSE_SMTP_ADDRESS: smtp.mailgun.org
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: [SMTP credentials for your domain under Mailgun domains tab]
DISCOURSE_SMTP_PASSWORD: [SMTP credentials for your domain under Mailgun domains tab]

Mailjet (6k emails/month)

Go to My Account page and click on the "SMTP and SEND API Settings" link.