*WIP: This is a work in progress and not yet ready for production use. *
This example demonstrates how to run Mautic with RabbitMQ as the message queue system for handling asynchronous tasks and assume the use of Docker Compose v2 including best practices for running Mautic with RabbitMQ in a containerized environment.
Also adds the possibility of importing files in background (See mautic_web-entrypoint_custom.sh)
- Docker Engine 20.10.0 or newer
- Docker Compose v2.0.0 or newer
- Git (for cloning the repository)
- Github PAT for downloading composer packages
- MaxMind Account ID e License Key to download GeoIPLite databse
- Optional: Create the directories specified by the volumes in docker-compose.yml for custom settings. Refer to the README.md file in the root of this repository for detailed instructions:
mkdir -p volumes/mautic/{config,cron,media/{files,images}}
- Copy the example environment files:
cp .env.example .env
cp .mautic_env.example .mautic_env
-
Configure the
.env
file with your informations -
Configure the
.mautic_env
file with your informations -
Change sections variables in enviroment of docker-compose.yml file for specific settings of each container and also the resources limits of each service as CPU and RAM.
- Start the services:
docker compose up -d
bash install-ses-deps.sh #To use the AWS SES service as SMTP Sender
- Monitor the startup process:
docker compose up -d
- Access Mautic:
-
Web Interface: http://localhost:8003 (In the first access the database and the user will be created for access.)
-
RabbitMQ Management Interface: http://localhost:15672 (default credentials: guest/guest)
cd ./volumes/mautic/logs
ls -la
docker compose logs rabbitmq
Backup for all services can be done from the directory ./volumes created at the Docker Engine host.
Undeploy Containers and delete all associated resources:
bash undeploy.sh
docker compose ps
- Change default RabbitMQ credentials in production
- Enable SSL/TLS for RabbitMQ connections
- Regularly update all containers to their latest versions
- Monitor queue sizes and consumer health
- Implement proper backup strategies
- Mautic Website
- Mautic Documentation
- Mautic Forum
- Mautic at Docker Hub
- Mautic at GitHub
- RabbitMQ Documentation
- Docker Documentation
Tainage: The solutions mentioned are intellectual ownership of their respective maintainers.It is essential to respect and follow the licenses of use associated with each of them.
_ This implementation is not intended for use in production and does not consider the essential requirements for the processing of massive email campaigns.The purpose of this project is to allow the functional evaluations._
Enouncement of responsibility: We are not responsible for any damage, loss or problem arising from the use of the mentioned solutions.Compliance with use licenses is the sole responsibility of users.
Feito com 💙 por DevVanilla.guru