Mailcow was one of those installs that did not go smoothly for me. There are a lot of moving parts, including Docker at play here and the instructions I’ve found everywhere else simply didn’t work. It was only by piecing together conflicting pieces of information that I got MailCow working in 2024. Here’s my Guide .
I’m not a big linux guy. I appreciate that everyone is working on competing with the big boys out there, but the fragmentation is hellish to me. I’ll spare you my complaints for now. But just be aware that I am going to write this doc in a style that is in protest for the most part. One thing that always kinda made me scratch my head… is why so many steps? Why is everything a 12 step process when it could be 3?
Get and Install Debian
Get and install Debian 11. Don’t get Ubuntu (couldn’t get it to work) I didn’t try Debian 12.
Debian is slightly different than ubuntu in that you have to add your user to the “sudoers” list. So do that by editing /etc/sudoers
Enter Sudo Mode
sudo -i
Run This Script
apt update
apt upgrade -y
apt install curl git
curl -sSL https://get.docker.com/ | CHANNEL=stable sh
apt update
apt install docker-compose-plugin
LATEST=$(curl -Ls -w %{url_effective} -o /dev/null https://github.com/docker/compose/releases/latest) && LATEST=${LATEST##*/} && curl -L https://github.com/docker/compose/releases/download/$LATEST/docker-compose-$(uname -s)-$(uname -m) > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
git clone https://github.com/mailcow/mailcow-dockerized
cd mailcow-dockerized
echo ***** ./generate_config.sh
./generate_config.sh
echo ***** docker-compose up -d
docker-compose up -d
echo ***** docker-compose ps
docker-compose ps
echo use sudo docker-compose ps to check if containers are running
Profit
open your webbrowser and go to
https://yourserver.whatever/
The Default admin username and password is
admin / moohoo
Good Luck!
I’ve been there with the multi-step installations, tell me about it! These kinds of guides are lifesavers though, even if they’re a bit rugged around the edges. But, I gotta say, does everyone just default to Docker now for everything? I remember the simpler times, but hey, I get the portability perks. Still, I wonder how many users would prefer a more straightforward installer that doesn’t require a deep dive into admin territory. Anybody else feel the nostalgia for the old-school package managers, or is it just me? ??
Docker’s like Lego for servers!
Docker simplifies deployment despite steps.