Module 2 · Lesson 4 of 26

VPS sizing and OS choice

Part of Mailcow: Self-Hosted Mail Server Mastery — Server Prerequisites & DNS.

Minimum for ~50 mailboxes: 2 vCPU, 6 GB RAM, 50 GB SSD. Bump to 4 vCPU / 8 GB / 80 GB for 200+.

OS: Debian 12 (bookworm) is the most-tested target. Ubuntu 22.04/24.04 LTS also works. Avoid CentOS Stream and RHEL derivatives — Docker support is messier and the official docs don't track them.

Filesystem: ext4 or xfs. ZFS works but the docs assume bind-mounted directories — skip overlays.

Swap: keep 2 GB; Rspamd and ClamAV occasionally spike.

Outbound port 25: verify the provider does not block it. Hetzner, OVH, Vultr (with request), and DigitalOcean (with request) all allow it. AWS EC2 and Google Cloud block 25 by default with no easy exception.

Sign in to keep track of what you have read.

Pulse · self-hosted sending

Own the infrastructure your pipeline depends on.

One install script on your own server. Pulse sets up the MTA, mailboxes, certificates and dashboard; you add domains and start sending.

# on a fresh Ubuntu server
$ cd pulse && sudo ./install.sh
→ docker compose up · kumomta · stalwart · caddy
→ dashboard ready on https://pulse.yourdomain.com
$

Also from us:Beat — monitoring that tells you the fixConsulting — $65/hr, no retainer