No. I’ve not heard from anyone, unfortunately. Mailcow’s a great product that would be AMAZING if it could be easily clustered for H/A. I know it’s possible and heard it involves running the DB in an H/A config, but I didn’t want to experiment too much with this, since I’m still learning docker and didn’t want to do too much “customization” to mailcow.
My config is not truly H/A in that there is no real load balancing. Keepalived properly keeps mail1 as the primary, but no mail flows to mail2 unless mail1 is down. The other issue is what really should happen is the DB needs to sync, not just the emails.
My config is basically setup for <disaster recovery> in that if mail1 goes down unexpectedly, I’ll still receive incoming mail on mail2. The problem I have is restoring mail1 once it’s back and getting the new emails from mail2 over to mail1. I can answer the challenges separately if anyone’s interested, but it’s manual and a bit ‘messy’. For small (home) configs and short outages, my setup works fine in that I won’t lose mail with one host down, which is great, but for large # of mailboxes or prolonged outages, mail recovery this way is a lot more problematic.
To make this work, I had to: 1) make sure the crypt keys were the same for both servers. 2) Use slightly different docker-compose.override files <and> directories 3) set up each server as stand-alone, so they use their own DB instance. 4) Leverage the GUI’s sync (imapsync).
Mailcow is great and customization is possible, just not ‘out-of-the-box’ nor for novices. I went with my config this way since it’s basically two ‘cloned’ stand-alone instances with keepalived running. I can live with the mailsync issue as it’s not that big of a deal if/when there is a crash.