Setting Up a Self Hosted Email Server
This process actually started in July of this year, but just completed this month. First I took a crack at
docker-mailserver, but after I couldn't get that to work I shifted the approach to use
It was a long time coming. I am one to want to self-host everything, and having an email with a custom url looks both professional (and cool). Additionally, I am trying to slowly separate myself from google services; my main email is gmail.
Setting up a new server
After some preliminary research, I discovered that email servers use a lot of RAM, so I set up a new VPS.
Then I went through the setup process for
docker-mailserver and roundcube mail client.
sudo docker run -e ROUNDCUBEMAIL_DEFAULT_HOST=[fracturedcode.net](http://fracturedcode.net/) \ -e ROUNDCUBEMAIL_SMTP_SERVER=[fracturedcode.net](http://fracturedcode.net/) \ -e ROUNDCUBEMAIL_UPLOAD_MAX_FILESIZE=10M \ -e ROUNDCUBEMAIL_DB_TYPE=pgsql \ -e ROUNDCUBEMAIL_DB_HOST=localhost \ -e ROUNDCUBEMAIL_DB_PORT=6900 \ -e ROUNDCUBEMAIL_DB_USER=roundcube \ -e ROUNDCUBEMAIL_DB_PASSWORD=nope \ -e ROUNDCUBEMAIL_DB_NAME=roundcubemail \ --add-host= -p 6906:80 -d roundcube/roundcubemail:latest-fpm-alpine
Unfortunately, I couldn't get it working, so I gave up for a month or two.
I looked at some other solutions and settled on mailcow.
Mailcow was super simple to set up. It was a quick look through the configuration file, opening some ports (I had already done that for the other solution), and running a
Then I had to do some minor setup in the application like DKIM configuration and security.
Mailcow by default comes with a webmail program called
SOGo, which is kind of like
RoundCube. I do think I prefer roundcube. I will either replace SOGo with RoundCube or remove webmail entirely.
I would definitely recommend mailcow for a self-hosted email solution. I would say it is easier to use than
docker-mailserver, and it also gets regular updates and support.
Email me @ firstname.lastname@example.org