How to Provide Custom Email Settings for Ghost with Docker

If you're using Ghost as your blogging platform and need to send registration emails to your subscribers, you may face the challenge of setting up an email server with Docker. In this post, I'll walk you through the process of configuring your email server with Ghost and Docker using environment variables.

First, create an email account with your email provider, and take note of the following details: your email address, email password, SMTP host address and SMTP port (usually 587).

To add environment variables at the Docker run command, use the following format:

docker run -d --name your_blog_name \
-e mail__options__auth__pass=your_password \
-e mail__options__auth__user=your_email \
-e mail__options__host=smtp_host_address \
-e mail__options__port=smtp_port_587 \
-e mail__options__secure=false \
-e mail__options__service=name_for_service \
-e mail__transport=SMTP \
[...]

Replace the variable values with your own email server information, and make sure to include the mail__transport=SMTP variable (additionally, see How I Set Up My Personal Blog Using Ghost Engine and Docker).

To add environment variables in the docker-compose configuration file, use the following format:

version: '3'

services:
  ghost:
    image: ghost
    environment:
      - mail__options__auth__pass=your_password
      - mail__options__auth__user=your_email
      - mail__options__host=smtp_host_address
      - mail__options__port=smtp_port_587
      - mail__options__secure=false
      - mail__options__service=name_for_service
      - mail__transport=SMTP

Replace the variable values with your own email server information. Now, your email server should be set up and ready to send registration emails to your subscribers.

In conclusion, setting up an email server with Ghost and Docker may seem daunting at first, but with the right configuration, it can be a straightforward process. By using environment variables, you can easily configure your email server and get your subscribers up and running in no time.

Subscribe to The Code Sandwiches

Sign up now to get access to the library of members-only issues.
Jamie Larson
Subscribe