๐Ÿง Advanced Installation

This page outlines the manual installation process for those proficient with the Linux command line. Most people will want to follow the Generic VPS installation or Racknerd Installation guides instead.

Installation can occur on any Ubuntu Linux server with an AMD64-compatible or ARM64 CPU.

Alma Linux is the only version of Linux that is officially unsupported due to issues it consistently causes with Docker, but please use Ubuntu.

Check to ensure your server has a swap partition enabled, Digital Ocean droplets do not come with swap preconfigured.

Redis recommends that vm.overcommit_memory = 1 be set in /etc/sysctl.conf. After changing /etc/sysctl.conf, run the command sysctl vm.overcommit_memory=1

Make sure ports 80, 443, 587, 8025, and 2525 are not in use by another application, firewalled, or blocked by SELinux.

To install and setup your platform we're going to need to complete the following steps, which will be outlined in detail below:

Run the curl one-liner emailed to you with your embedded license key to download the installation archive, e.g.:

curl -L https://api.keygen.sh/v1/accounts/5b5014e5-3f60-430e-af80-b0004f2eb853/artifacts/edcom-install.tgz -H 'Authorization: License XXXXXXXXXXX-V3' -o edcom-install.tgz

Extract the archive as the root user in the desired install location:

tar xzvf edcom-install.tgz

Files will be extracted into a single directory named edcom-install where the entirety of the emaildelivery.com platform will reside going forward.

Change to the edcom-install directory:

cd edcom-install

Install Docker Engine

We include an automated Docker installation script for Ubuntu:


See Docker installation instructions for Debian, CentOS, Fedora

Run the following command to load the Docker images:


Copy the file config/edcom.defaults.json to config/edcom.json

cp config/edcom.defaults.json config/edcom.json

Open the config/edcom.json file with an editor such as Nano, Vim, or Emacs and edit the following lines:

"admin_url": "http://your_domain_name",
"smtphost": "your_domain_name"

The admin_url andsmtphostare your platform's management domain, use a subdomain such as esp.mydomain.com.

The admin_url must be a valid domain that has a DNS A record pointed at the IP of the installation server.

After this step, the admin_url domain can only be changed with the ./update_domain.sh command.

To start the platform, run the following command:


Then run the following command to create your administrator account:

./create_admin.sh "youremail@yourdomain.com" "Your Name" "Company Name"

The email address you use here doesn't have to be a real one, it's just your Administrator username.

Set your administrator password and initialization will complete.

Run ./create_admin.sh --help for more information and ./reset_password.sh -h if you lose your administrator password.

The installation should now be accessible in your web browser at the admin_url domain.

Next, enable Let's Encrypt for HTTPS://.

Last updated