All of these run the same protocols and all of them need the same DNS setup. The real differences are how much memory they want, how much of the configuration they do for you, and whether you get a web interface. This guide compares five.
The short version
| Platform | RAM floor | Web admin | License |
|---|---|---|---|
| mailcow | 4 to 6 GB | Full featured | Open source |
| Stalwart | 1 to 2 GB | Full featured | Open source |
| poste.io | 1 to 2 GB | Full featured | Proprietary, free tier |
| Mailu | 2 to 3 GB | Basic | Open source |
| docker-mailserver | About 1 GB | None | Open source |
| Mail-in-a-Box | 1 to 2 GB | Full featured | Public domain |
mailcow
The most popular option and the one with the most written about it. It is a stack of containers built around Postfix, Dovecot, Rspamd, and SOGo, with a polished admin interface, webmail, calendar, and contacts.
The cost is memory. ClamAV alone wants about a gigabyte, and the full stack is comfortable at 4 to 6 GB, well above the 2 GB people hope for.
Pick it if: you want the best interface and a large community, and you can give it a plan with real memory.
Stalwart
Written in Rust, and the whole server is one binary in one container. It covers SMTP, IMAP, POP3, JMAP, CalDAV, and CardDAV, with its own spam filter and a setup wizard that generates your DNS records for you.
It uses a fraction of mailcow's memory and runs comfortably where mailcow would swap. The trade is a younger project and a smaller community, so there are fewer answers online when something is odd.
Pick it if: you want modern protocols and a small footprint, and you are comfortable being slightly ahead of the crowd.
poste.io
A single container that bundles Postfix, Dovecot, Rspamd, ClamAV, and Roundcube webmail, with a clean admin interface. Installation is genuinely one docker run.
Two things to know. It is proprietary, not open source, with a free tier and a paid PRO version behind a private Docker registry. And it wants the host network stack, which conflicts with an existing web server on ports 80 and 443 unless you configure it around that.
Pick it if: you want the fastest path to a working mail server and you do not mind proprietary software.
Mailu
A Docker Compose stack of well-known parts, generated by a setup wizard on their site. Nothing is hidden, every service is a standard upstream image, and debugging is straightforward because you already know the components.
The admin interface is plain and workmanlike. There is no bundled calendar or contacts.
Pick it if: you want to understand every moving part, or you are deploying to Kubernetes.
docker-mailserver
No web interface at all. Accounts, aliases, and settings are files and command line tools. Very small, very auditable, no surprises.
Pick it if: you administer servers for a living, you are the only user, and a web interface would just be another thing to secure.
Mail-in-a-Box
Not a container at all. It is an installer that takes a fresh Ubuntu server and configures everything: mail, spam filtering, webmail, calendars, contacts, ActiveSync, a firewall, and its own DNS server. There are no configuration options by design.
The DNS part is what sets it apart. If you let it run your nameservers, it generates SPF, DKIM, DMARC, DNSSEC, and MTA-STS records that are already correct, which removes the step that defeats most self-hosted mail attempts.
The costs are real. It takes the whole machine, so nothing else runs there. It is not customisable, and the project states that as a goal. And it still requires Ubuntu 22.04, which reaches end of support in April 2027.
Pick it if: this VPS will do nothing but mail, and you would rather not learn how any of it works.
Memory is the deciding factor for most people
Match the platform to a plan you actually want to pay for:
- 2 GB plan: Stalwart, poste.io with ClamAV disabled, or docker-mailserver.
- 4 GB plan: Mailu comfortably, mailcow if you disable ClamAV.
- 8 GB plan: mailcow with everything on.
Disabling ClamAV is normal
Every platform here lets you turn the virus scanner off, and it is the single biggest memory saving available. Spam filtering, which does most of the work, stays on. On a personal or small team server, that trade is usually worth it.
What none of them fix
Software choice has no effect on deliverability. Reverse DNS, SPF, DKIM, DMARC, an open port 25, and IP reputation decide whether your mail arrives, and all five platforms need the same setup for them. Our guide on what running your own mail server actually takes covers it.
Quick reference
| If you want | Pick |
|---|---|
| Best interface, memory available | mailcow |
| Smallest footprint, modern protocols | Stalwart |
| Fastest setup, proprietary is fine | poste.io |
| Standard parts you can inspect | Mailu |
| No web interface, minimal surface | docker-mailserver |
| A whole machine for mail, done for you | Mail-in-a-Box |
Where to go next
We have install guides for poste.io, mailcow, Stalwart, Mailu, docker-mailserver, and Mail-in-a-Box. Read the requirements guide first if you have not: the DNS and port 25 work is the same whichever you choose, and it is the part that decides whether any of this works.