Skip to content

Installation

Nicholis edited this page Mar 18, 2025 · 2 revisions

Tip

Don't want to host and manage your own instance? Binaryfrost offers managed SnowMail hosting.

Download the Docker compose file from GitHub.

wget https://raw.githubusercontent.com/TrueWinter/SnowMail/main/docker-compose.yml

Set the following environmental variables (either in a .env file, in the shell, or in docker-compose.yml):

  • APP_SECRET: A long (16-32 character) secret used for signing JWTs
  • EMAIL_FROM: The email address that all contact form submissions are sent from
  • MAILNAME: The (sub)domain part of EMAIL_FROM

See .env.example for the full list of environmental variables.

Important

You should add the IP address(es) of your SnowMail instance to the SPF record of the EMAIL_FROM (sub)domain and configure reverse DNS. Use a service like mail-tester to test your configuration.

Then, start the container:

docker compose up -d

Note

While it is possible to run SnowMail without Docker, using Docker allows you to set up a SnowMail instance with MongoDB and an SMTP server in just a few commands. The documentation assumes you have installed SnowMail using Docker.

SnowMail runs on port 8025 by default. It is recommended to run SnowMail behind a reverse proxy with SSL configured.

Clone this wiki locally