mailcow mailserver suite

News and notes

17. Aug 2018 - Updates and two important fixes

We just fixed SOGo theme switching again. There is a chance we did it, I promise...

Knight1 made us aware of a critical bug, that led to mailcow accepting custom X-FORWARDED-FOR headers. This bug was introduced with the last update.

Important change: We disabled "any" and "all authenticated" ACL settings in Dovecot and removed the box in SOGos ACL editor (big thanks to the SOGo devs, please help them, buy a subscription!).
You can find information about how to re-enable it here.

We will add an easy way to enable your SOGo subscription soon.

Please don't forget supporting mailcow. :-)

14. Aug 2018 - Updates!

Some updates, primarily aimed at mailcow UI, were pushed today.

Most improvements were made to the logging interface.

Please consider supporting mailcow. :-)

03. Aug 2018 - Updates!

Learning methods for bayes and fuzzy hashes (new) changed on todays update, I recommend to run...

bash helper-scripts/ start over with a clean hash database.
Spam/ham is no more auto-learned, please move mails into/out of the junk folder to train the filter _or_ use the new spam/ham alias target.

The logging method changed slightly, some more changes will follow.
A new section "mailcow UI" was added to the logs panel. IPs are logged but anonymized by default, please see ANONYMIZE_IPS in "".
Users now see their last login.

Redis logs are now trimmed by a cronjob in "dovecot-mailcow", that will move to "watchdog-mailcow" in the future => much less hammering.

SYSCTL_IPV6_DISABLED was removed, please see the docs about how to disable IPv6.

Sync jobs are now unlocked when the job was abruptly interrupted.
Sync jobs in mailcow UI can now contain custom parameters.
Some previously hard-coded parameters were removed!
"subscribeall", "timeout1" and "timeout2" can now be defined in the job details.
"buffersize", "split1", "split2", "fastio1", "fastio2" were removed and can be used in custom parameters.

The SOGo theme switching bug is hopefully fixed. I will probably find a better way to fix it than using "sed" to replace the hard-coded colors.

PS: If you like to, please consider supporting us. :-)

27. Jul 2018 - Good news, everyone...

We have a demo online @

Thanks to mritzmann!

18. Apr 2018 - So you run and your volumes are empty?

Docker Compose now recognizes "-" and "_" in compose project names, while it used to ignore them.

In case you run and are now missing your beloved data, just run these commands to fix the issue:

cd /your/mailcow-dockerized-path
docker-compose down
sed -i '/COMPOSE_PROJECT_NAME=/s/-//g' mailcow.conf
docker-compose up -d was fixed to auto-correct mailcow.conf

28. Feb 2018 - Code updates, again

We merged new code the other day and pushed new images.

A changelog will follow.

18. Jan 2018 - Code updates, again

We merged new code the other day and pushed new images.

We still need a better way to publish changelogs, anyways...

mailcow now comes with a quarantaine function, that is disabled by default. Our quarantaine is special, it will still reject mails in pre-queue mode. I disliked the idea of having to check the quarantaine for mails the sender assumed were transfered and received properly, that's a very old and odd model we won't support. Our server accepted a mail and so it needs to be delivered to a mailbox. Auto-replies are dangerous in case of "ping" spam to check wether a mail address is actively used.

Thanks for your donations, it really helps mailcow a lot.

26. Oct 2017 - Code updates

We just merged new code and pushed new images.

Watchdog has no docs available yet, I am working on it!

Update: Thanks to Antoine Sirinelli we now have French language support!

French translation
19. Oct 2017 - Upcoming changes

We will merge dev to master soon. Checkout the new screenshots for new features! Ratelimit per domain and user, customisations and much more. A new watchdog will be introduced to check the health of your cow and restart unhealthy containers automatically (still a WIP). 😊

Link to screenshots

08. Sep 2017 - Merged dev => master

We just merged new code! Please join our IRC channel if you have any questions.

05. Jul 2017 - mailcow: dockerized - Updates, updates, updates...

First of all I would like to thank you for your donations! I very much appreciate your help and cannot thank you enough for this. Thanks, thanks and thanks again. 😊

Some interesting and useful features were changed or added to mailcow over the past weeks.
A very interesting change was made to the Fail2ban-like system, that now reads logs from a Redis channel to not be dependent on Dockers Json logging driver anymore.

Another feature was introduced with an update script you will find in your mailcow root directory. It will update itself before executing any code. Most conflicts will be auto-resolved (in favor for the mailcow repository).

Other features include the ability to import private keys for DKIM and ARC (yes, we have ARC support!), SKIP_CLAMD to not run ClamAV and save some (a lot) memory - which by the way will be auto-detected as down by Rspamd -, updated Dovecot + Pigeonhole code, SKIP_FAIL2BAN option, a ACME-client to auto-request Let's Encrypt CA signed certificates, settings for Fail2ban in the Web UI (whitelist, ban time, retry time frame etc.) and more...

I hope we can switch to a better website soon, which should then parse the commits as some kind of changelog. Let's also look forward to implement SOGo 3.2.10, which will introduce EAS v16 support!

16. Jun 2017 - Bind9 recursor will be replaced by Unbound

Please ignore a previous announcement to use a DNSSEC enabled local DNS server. We decided to replace Bind9 by Unbound instead of removing it from mailcow: dockerized.

09. Jun 2017 - Bind9 recursor will be REPLACED (UPDATE!)
03. May 2017 - Reverse proxy users: Update your settings!

There were slight changes to the reverse proxy configuration. So if you use such a setup in front of mailcow: dockerized, you should update your configuration after pulling the latest changes from Git.

01. May 2017 - Please use mailcow: dockerized

Until changes and improvements made to mailcow: dockerized are merged to the non-dockerized mailcow, it is recommended to use mailcow: dockerized.

Please excuse the huge delay, my time is very limited and development is primarily done in my free time.

29. Dec 2016 - mailcow: dockerized

11 containers and 4 volumes combine to a Docker conform mailcow installation.

mailcow: dockerized will be a rolling release in the master branch @ GitHub. There will be a dev branch soon, which should not be used.

Learn more about mailcow: dockerized below, please visit us on IRC @ Freenode in #mailcow

Link to GitHub
Link to Docs
24. Sep 2016 - mailcow 0.14 is final

A fresh installation is recommended!

  • WebUI per mailbox: Enforce in- and outbound TLS
    • ! Works best with Postfix >=3.0 (*uses smtp_dsn_filter to turn temp. TLS errors to perm. errors to notify client instantly)
  • WebUI per mailbox: Set black- and whitelist records for spam filter
  • WebUI: Drag and drop Postfix restrictions
  • Switched WebUI to PDO database interface
  • Added some options to /var/www/mail/inc/ (please use to overwrite settings)
  • Multi-language Web UI (English, Portuguese and German)
  • Fixed errors in Web UI
  • Removed backup from Web UI and added "mailcow-backup-mail" script
  • (Hopefully) RFC compliant email addresses
  • Z-Push removed - choose between SOGo (ActiveSync + DAV) and Roundcube
  • Better Sender ACL (find it at "edit mailbox")
  • Fail2ban was removed and should be setup according to your own setup
  • was added to provide a signed certificate (optional)
Link to release
08. Sep 2016 - Forum online (Update 13. May 2017: Forum offline)

Thanks to Brad we now have a Discourse instance online for you to find help installing/configuring mailcow!

We can finally stop using Github as our forum and keep using it for real issues and bugs. :-)

Visit forum
27. Dec 2015 - Hosted mailcow (SOGo + OX App Suite) verfügbar

Für deutschsprachige Kunden bietet Servercow nun eine gehostete mailcow-Instanz an.

Mehr lesen

Demo / Installation

mailcow: dockerized documentation

mailcow: dockerized @ GitHub

  ↪ admin / moohoo bzw.
  ↪ department / moohoo
  ↪ / moohoo

Please find more information about mailcow: dockerized in the official documentation linked above.

mailcow: dockerized is based on Postfix, Dovecot, Nginx, PHP, MariaDB, Rspamd and more!

Support development

Donate Bitcoin


Please find us on IRC: Freenode, #mailcow for community support.

Remote hands-on support

Paid service

Installation, Update und Änderungen nach besonderen Wünschen.

Installation, updates and customizations to fit your needs.


Hosted mailcow

Visit Servercow for a hosted mailcow solution in Germany


KVM virtual machines for
mailcow @ (DE)