Install Mailtrain on Uberspace 7

2020-07-19 Updated: 2020-07-21 Tutorials

This tutorial explains how to install Mailtrain on a Uberspace 7. Mailtrain is a self-hosted open-source (released under the GPL v3.0.) newsletter app built on top of Nodemailer. I am following the manual installation guide from the official Mailtrain repo and add some additional Uberspace infos. I contributed this guide to the Uberlab and earned my first Ubercup.


This guide uses Node.js version 12, which is the default on Uberspace 7 at at the moment.

Clone the GitHub repository:

[isabell@stardust ~]$ git clone git://
[isabell@stardust ~]$

Install the required dependencies:

[isabell@stardust ~]$ cd mailtrain
[isabell@stardust mailtrain]$ npm install --production
[isabell@stardust mailtrain]$


Database Setup

Create a new database:

[isabell@stardust mailtrain]$ mysql -e "CREATE DATABASE ${USER}_mailtrain;"
[isabell@stardust mailtrain]$

Mailtrain Config

Copy the example config file:

[isabell@stardust mailtrain]$ cp config/default.toml config/production.toml
[isabell@stardust mailtrain]$

Update production.toml with your MySQL settings; look for the [mysql] block:




Web Backend Config

Mailtrain is running on port 3000. Configure the server to respond to port 3000 using web backends:

[isabell@stardust ~]$ uberspace web backend set / --http --port 3000
[isabell@stardust ~]$

Supervisord Daemon Setup

Create ~/etc/services.d/mailtrain.ini with the following content:

command=env NODE_ENV=production /bin/node index.js

If it’s not in state RUNNING, check your configuration.

Login and Change Admin Credentials

Your Mailtrain installation should now be reachable on Log in with the username admin and the password test.

Go to and change your email address as well as your password.

Finishing installation

Go to In the General Settings section change the Service Address (URL) to

In the Mailer Settings section change the

  • Hostname,
  • Port,
  • Encryption,
  • username,
  • password, and
  • test your settings by pressing the Button Check Mailer Config.

Best Practices

  • Test the configuration by creating a new list and subscribing yourself to it.
  • Craft your campaign with love and dedication.
  • Don’t spam users that don’t want your newsletter.

Tested on Uberspace v7.7.0 with NodeJS v12 and MariaDB 10.3.23.

Related Posts