Skip to content

devopsvanilla/mautic-docker

Repository files navigation

Mautic Docker deployment on steroids

*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)

Prerequisites

Configuration

  1. 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}}
  1. Copy the example environment files:
cp .env.example .env
cp .mautic_env.example .mautic_env
  1. Configure the .env file with your informations

  2. Configure the .mautic_env file with your informations

  3. 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.

Deployment

  1. Start the services:
docker compose up -d
bash install-ses-deps.sh #To use the AWS SES service as SMTP Sender
  1. Monitor the startup process:
docker compose up -d
  1. Access Mautic:

Logs

View Mautic logs:

cd ./volumes/mautic/logs
ls -la

View RabbitMQ logs:

docker compose logs rabbitmq

Backup

Backup for all services can be done from the directory ./volumes created at the Docker Engine host.

Undeploy containers

Undeploy Containers and delete all associated resources:

bash undeploy.sh

Troubleshooting

Check service health:

docker compose ps

Security Considerations

  • 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

Additional Official Resources


🛈 Final words

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

About

🚀☁️👊Mautic Docker deployment on steroids

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages