[Discuss] Containerizing - Re: Running a mail server, or not

Rich Braun richb at pioneer.ci.net
Wed Jun 20 12:38:04 EDT 2018


David Kramer <david at thekramers.net>
> - Are Postfix/Dovecot/procmail the best tools for me, and worth the 
> insane configuration process?
>...
> - Right now I have mbox, some of them pretty huge. I have to assume 
> there will be a way of moving my mail over from my home server to the 
> new server in maildir format

I've been running my home server pioneer.ci.net for exactly 25 years now. I started out with sendmail, then exim, and finally postfix for the past decade or so. There's still a procmail in there somewhere, and I ditched various imap solutions for dovecot also a decade or so ago. Inbound and outbound services exist to deliver your email via SMTP so you can get it into your home system without having to own a static IP (I just have regular old cable Internet, with IP that changes a few times a year; actually, with dynamic-DNS I have no idea how often the IP address changes--and don't care.)

Just this week I gave up on squirrelmail after 15 years of using that; for now I'm typing this message on a new installation of RainLoop. There are a few web-UI's like this that are still getting maintained (most popular is Roundcube) but it sounds like you're happy with the text or graphics UI that you already have; just wanting a better way to keep things maintained.

What I've done to improve reliability/ease of maintenance is switch from a 2-node primary/failover setup to a 3-node cluster of low-power motherboards (as in, each machine burns under 20 watts) running docker in 16GB of RAM with 1TB of SSD each. The whole hardware cluster cost less than the first "real" non-desktop server I bought in '99. I've split out each of the email components into a set of small container images that can updated independently: dovecot, postfix, spamassassin, and so on.

I started down this containerizing path first with VMware Player, then VirtualBox, then LXC, and finally docker over about the past 8 or 9 years. The docker setup is simplest/most straight-forward. So I've published all my work on the Docker hub and on github under my InstantLinux personal identity. 

My efforts go well beyond just email, to include CI/CD, private-cloud, weather and home-entertainment. The full body of work can be found at https://github.com/instantlinux/docker-tools, including an Ansible tool to configure everything from the hardware up under Ubuntu.

My email setup uses MailJet to send outbound (their advantage is they strip the Received headers containing my cable-company's dynamic IP address), and EasyDns to receive inbound. One of my docker images is ez-ipupdate, which ensures my DNS stays on the current IP address. I still use mbox for all my mail; maildirs just proved too unwieldy for the available tools, and I can easily scan an mbox file with grep/vim/emacs. Today's cheap hardware handles mbox files up to a couple GB just fine.

-rich



More information about the Discuss mailing list