Skip to content

KISSmauticDKR 6.0.2 – Your first Mautic 6 Docker Container.

For the average developer or geeky marketer who just wants to give Mautic a quick spin, the official images are serious overkill.
That is why I’ve created the KISS-Mautic containers, an all-in-one, batteries included, single-container implementation of a full Mautic server, with:
– Debian 12-slim
– Mariadb 11.4 LTS
– Apache 2.4
– PHP 8.3-FPM
– Mautic 5.2.6 or 6.0.2

The database is pre-populated with a user and a Mautic database as well as the Mautic DB schema, so you don’t have to go through Mautic’s installation (wizard) process.

Tempted? Get the latest Mautic, ready to log in in under 2 minutes… Give it a quick spin with:
docker run -d --name KISSmauticDKR-526 -p 8080:80 martechws/mautic:6.0.2
Takes just a few seconds to launch, then go to http://localhost:8080

If you like to deploy your tools with Docker, you probably already use or have used the fantastic official docker images for Mautic.
The official images are great for complex deployments and allow separation of concerns, to a certain degree… perfect for, let’s say… Kubernetes…

But for the average developer or geeky marketer who just wants to give Mautic a quick spin, the official images are serious overkill, and its complexity requires to first understand how these images operate before deployment, prepare the proper infrastructure, etc…

I decided to create KISSmauticDKR, a one-container-has-it-all (yes, including the database) aiming at the simplest possible deployment, with just one docker run command, and very simple to manage, since one container has it all… hence the KISS naming.

It is meant to become the main method for deploying Mautic instances in my Mautic cluster.
Running on a Swarm cluster behind a Traefik proxy that resolves TLS, hence by default it will use port 80
For the same reasons, it does not have any SSL certificate installed nor installation procedure, if you would prefer to have one, consider using the AutoMautic script, which will install an SSL/TLS for you using Certbot.

KISSmauticDKR is a Pull & Play, very verbose, KISS Dockerfile for Mautic 6.0.2

Easy to test, simple to troubleshoot, and most importantly, it takes care of most of the configuration for you, because all of that, I am certain this will become your second favorite Mautic Docker Image for testing new Mautic versions and play with Mautic.

I have heavily commented the Dockerfile and helper script, so you can easily understand what is going on and do some modification if you feel like it.
This GitHub repo hosts the Dockerfile:
https://github.com/Martech-WorkShop/KISSMauticDKR

This Dockerfile focuses on simplicity and convenience for the person deploying the image.

As well as clarity and verboseness for those wanting to understand what is going on in the Dockerfile or wanting to do modifications to it.
The KISS naming might seem contradictory with how everything has been crammed into one single container, and Yes, all these RUN commands make the image heavy, and then sooo many comments…
Yes, all this adds a bit of complexity on the Dockerfile itself, and breaks the one service per container rule, by design.
That is because here, the KISS principle, here means simple and easy for the user to deploy and to manage.
The comments are there for clarity and to facilitate modifications and playfulness.
In favor of that kind of KISS, minimalist and other types of effectiveness had to be sacrificed, I hope you will excuse my boldness.

The database is pre-populated with a user and a Mautic database as well as the Mautic DB schema, so you don’t have to go through Mautic’s installation (wizard) process.

How to use it?

You have 2 main options:

a) Deploy from DockerHub (recommended).

The easiest way to use this image is to deploy it directly from the Docker Hub, use this command:
docker run -d --name KISSmauticDKR-526 -p 8080:80 martechws/mautic:6.0.2

or

b) Clone from repo and build locally.

If you prefer to download the components and build the image yourself, or if you want to modify the Dockerfile.

git clone Martech-WorkShop/KISSMauticDKR

docker build -f 6.0.2.Dockerfile . -t KISSmauticDKR:6.0.2

docker run -d --name KISSmauticDKR -p 8080:80 martechws/kiss-mautic:6.0.2

Use your browser to navigate to http://localhost:8080

To log into the container:
docker exec -ti KISSmauticDKR bash

In either case, Here are your default credentials:
MAUTIC_DB_NAME=mautic-db
MAUTIC_DB_USER=mautic-db-user
MAUTIC_DB_PASSWORD= You have to define it using -e MAUTIC_DB_PASSWORD (see below)
MAUTIC_LOGIN=MasterAdmin
MAUTIC_LOGIN_PWD=ChangeMeRightNow2025!


The Mautic Login and its password are NOT yet parametrized, so you can not yet define these 2 variables at runtime.
If you want to change the db name, db username or db password, you can do it when running the container, with the -e modifier and pass the variable name and value, like this:
docker run -d -e MAUTIC_DB_PASSWORD=my-mautic-password --name KISSmauticDKR -p 8080:80 martechws/kiss-mautic:6.0.2

Intended uses:

  • A simple way to test Mautic, pull & play.
  • A live overview of Mautic requirements.
  • A starting point for Mautic code exploration and tinkering.
  • A way to play with Dockerization, Dockerfiles and Docker image creation.

It is NOT meant as a production ready image.

If you have any ideas how to make it clearer or simpler, post down here on the comments, email me, submit a PR or post an Issue.