Catalog · Server

mailcow

mailcow: dockerized is a complete mail server suite in Docker containers. It combines Postfix, Dovecot, SOGo groupware, Rspamd spam filtering and ClamAV behind a web admin interface and handles mail, calendars and contacts for your own domains. Running a mail server means managing DNS records, IP reputation and deliverability, which needs solid ops experience.

Code Fireworks render of the mailcow repository, as of Nov 2026
As of Nov 2026Code Fireworks ↗

Why it fits

It is licensed under GPL version 3. You can deploy it on your own VPS or hardware for private mail without a proprietary mail-suite license.

Getting started

9 steps · clarity 3/5

Prerequisites (from the official docs):

  • A dedicated server or VPS (x86_64 or ARM64; OpenVZ, Virtuozzo and LXC are not supported) with at least 6 GiB RAM plus 1 GiB swap and 20 GiB disk
  • Docker 24 or newer with the Compose plugin, plus git, openssl, curl and jq
  • A domain with DNS records you control: A/AAAA, MX, reverse DNS (PTR), and later SPF, DKIM and DMARC
  • Open mail and web ports, including 25, 80, 443, 465, 587 and 993, and a correct system time

Steps:

  1. Install the required packages on a supported dedicated server or VPS.
  2. Install Docker and the Compose plugin as described in the system prerequisites.
  3. Clone the mailcow-dockerized repository.
  4. Run generate_config.sh and enter your mail hostname.
  5. Review and edit mailcow.conf if needed.
  6. Pull the images with docker compose pull.
  7. Start the stack with docker compose up -d.
  8. Create the DNS records (A/AAAA, MX, PTR, SPF, DKIM and DMARC) as documented.
  9. Log in to the web UI, change the default admin password and add your domain and mailboxes.

Official install guide: https://docs.mailcow.email/getstarted/install/

DNS prerequisites: https://docs.mailcow.email/getstarted/prerequisite-dns/

System prerequisites: https://docs.mailcow.email/getstarted/prerequisite-system/

Notes

Operating email on the public internet also requires domain/DNS and operational care (deliverability); that is outside license scope.

Sources

  1. mailcow.github.io/mailcow-dockerized-docs
  2. github.com/mailcow/mailcow-dockerized/blob/master/LICENSE
  3. docs.mailcow.email/getstarted/install
  4. docs.mailcow.email/getstarted/prerequisite-dns
  5. docs.mailcow.email/getstarted/prerequisite-system
  6. github.com/mailcow/mailcow-dockerized/blob/master/README.md
  7. mailcow.email

More in Server

← Back to the catalog