Prerequisites
Before running the install script, make sure you have the following. The install script handles Docker automatically, but the other items are up to you.
A Linux server or Mac
OwnMaily runs on Linux (Ubuntu, Debian, and most distributions) and macOS. If you are on Windows, you will need WSL2 (Windows Subsystem for Linux). The install script does not support native Windows.
For production, any VPS will do. A $5-6/month server from Hetzner, DigitalOcean, or Vultr is plenty for a list of tens of thousands of subscribers. OwnMaily is a single Docker Compose stack - it is not resource-hungry.
Minimum specs: 1 vCPU, 1 GB RAM, 10 GB storage. The database grows with your subscriber and analytics data, so plan storage accordingly if you have a large list.
Docker and Docker Compose v2
The install script installs Docker and Docker Compose automatically if they are not already
present. If you already have Docker installed, make sure you have Compose v2 (the command is
docker compose, not docker-compose). Version 1 is not supported.
To check: run docker compose version. If you see v2.x.x, you are good. If you see
"command not found", the install script will handle it.
A domain name
A domain is optional for local testing but required for production. You need a domain because:
- Email links (unsubscribe, tracking, confirmations) need a public URL to point to
- Most SMTP providers require a verified domain before they will send email for you
- HTTPS is expected by email clients when following links in emails
If you are just exploring the app locally, you can skip the domain for now. You will not be able to send real emails with working links, but you can see how the product works.
When you are ready for production, pick a subdomain of a domain you own - something like
mail.yourdomain.com. See the
Domain and DNS guide for setup instructions.
An SMTP provider account
OwnMaily does not send email directly. It hands off to an SMTP provider that manages delivery, bounce handling, and spam compliance. You need an account with one of the supported providers:
- Resend - recommended for most users. Clean API, 3,000 emails/month free, straightforward domain verification. Setup guide
- Mailgun - well-established, good deliverability. Setup guide
- Amazon SES - cheapest at scale, but requires more setup and an AWS account. Setup guide
You can create the account before or after installing OwnMaily. The setup wizard lets you configure SMTP during installation, but you can also skip it and add credentials later in Settings.
Tip: If you are using Resend or Mailgun, you will also need to add DNS records to your domain for SPF and DKIM. Your SMTP provider guides you through this during domain verification - it is usually just adding 2-3 records to your DNS dashboard.