Can someone please post an AWS SES working app.yml file example? I mean literally copy and paste it. Been fighting this set up for days and its got to be something minor in the config settings.
Below is an example of a working app.yml
file configuration for AWS SES (Amazon Simple Email Service) in a Discourse deployment. Replace placeholders with your actual AWS SES configuration details.
Example app.yml
for AWS SES with Discourse
templates:
- "templates/postgres.template.yml"
- "templates/redis.template.yml"
- "templates/web.template.yml"
expose:
- "80:80" # HTTP
- "443:443" # HTTPS
params:
db_default_text_search_config: "pg_catalog.english"
db_shared_buffers: "128MB"
#
# Uncomment these lines to set the SMTP mail server for outgoing emails.
#
DISCOURSE_SMTP_ADDRESS: email-smtp.us-east-1.amazonaws.com
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: YOUR_AWS_SES_SMTP_USERNAME
DISCOURSE_SMTP_PASSWORD: YOUR_AWS_SES_SMTP_PASSWORD
DISCOURSE_SMTP_ENABLE_START_TLS: true
DISCOURSE_NOTIFICATION_EMAIL: "no-reply@example.com" # Replace with verified SES sender email
DISCOURSE_HOSTNAME: "forum.example.com" # Your Discourse forum hostname
DISCOURSE_DEVELOPER_EMAILS: "admin@example.com" # Admin email(s)
volumes:
- volume:
host: /var/discourse/shared/standalone
guest: /shared
- volume:
host: /var/discourse/shared/standalone/log/var-log
guest: /var/log
hooks:
after_code:
- exec:
cd: $home/plugins
cmd:
- git clone https://github.com/discourse/docker_manager.git
run:
- exec: echo "Beginning of custom commands"
Key Points:
- Replace Placeholders:
- Replace
YOUR_AWS_SES_SMTP_USERNAME
andYOUR_AWS_SES_SMTP_PASSWORD
with the SMTP credentials generated in AWS SES. - Update
DISCOURSE_NOTIFICATION_EMAIL
with an email address verified in AWS SES. - Update
DISCOURSE_HOSTNAME
with your forum’s domain name. - Replace
admin@example.com
inDISCOURSE_DEVELOPER_EMAILS
with the email(s) of your Discourse administrators.
- Verify Your SES Configuration:
- Ensure the sending email address (
DISCOURSE_NOTIFICATION_EMAIL
) is verified in AWS SES. - If your SES is in a sandbox environment, verify recipient email addresses.
- Test Your Configuration:
- After saving the file, rebuild your Discourse instance:
cd /var/discourse
./launcher rebuild app
- Check the Discourse logs for any email-related errors:
./launcher logs app
- AWS SES Region:
- Update the
DISCOURSE_SMTP_ADDRESS
with the appropriate endpoint for your AWS region (e.g.,email-smtp.us-west-2.amazonaws.com
).
If emails still don’t send, review the Discourse error logs and SES sending statistics for clues.