Skip to main content

Overview

Mautic is an open-source marketing automation platform deployed as part of the Mondo Open Platform Service (MOPS). This documentation covers the deployment, configuration, and management of Mautic using Docker Compose with Traefik as a reverse proxy.

Service Details

Architecture

Mautic is deployed as a multi-container application with the following components:
  • Mautic Web: Main application container serving the UI and API
  • Mautic Cron: Runs scheduled tasks for email campaigns, etc.
  • Mautic Worker: Processes queue jobs like email sending
  • MySQL Database: Stores all Mautic data

Prerequisites

  • Docker Engine (24.0+)
  • Docker Compose v2
  • Traefik reverse proxy configured and running
  • External networks: traefik-net and mautic-net
  • DNS configured for outreach.trymondo.com

Deployment Configuration

Directory Structure

Environment Variables

Create a .env file with the following variables:
Create a .mautic.env file with additional Mautic-specific configurations (not shown in the provided files).

Docker Compose Configuration

Resource Limits (Optional)

For improved stability, add resource constraints using a docker-compose.override.yml file:

Network Configuration

Before deployment, ensure the required networks exist:

Deployment Instructions

  1. Create the deployment directory structure:
  2. Create the configuration files:
  3. Add appropriate content to the .env and .mautic.env files
  4. Deploy the service:
  5. Verify the services are running:

Traefik Integration

Mautic is configured with the following Traefik settings:
  • Host Rule: outreach.trymondo.com
  • Entrypoint: websecure (HTTPS)
  • TLS: Enabled with production certificate resolver
  • Backend Port: 80
  • Middlewares: CORS and secure headers

Webflow Integration

Mautic can be integrated with Webflow forms using JavaScript tracking. Add the following code to your Webflow site:

Maintenance

Backup Strategy

Back up Mautic regularly:

Updates

To update Mautic:
  1. Update the image tag in docker-compose.yml
  2. Apply the update:
  3. Check logs for any issues:
Always back up your data before updating Mautic to a new version.

Troubleshooting

Database Connection Issues

If Mautic can’t connect to the database:
  1. Verify MySQL container is running:
  2. Check database logs:
  3. Verify credentials in .env file match what Mautic is using

Email Configuration Problems

If emails are not being sent:
  1. Check worker logs:
  2. Verify SMTP settings in Mautic’s configuration
  3. Ensure the worker container has proper network access to the SMTP server

Web Interface Not Accessible

If you can’t access the Mautic interface:
  1. Check container health:
  2. Verify Traefik routing:
  3. Check for any error logs:

Performance Optimization

For improved performance:
  1. Increase Memory Limits: Adjust values in docker-compose.override.yml if needed
  2. Database Tuning: Consider adding MySQL configuration for better performance
  3. Caching: Enable Redis if needed for larger installations

Additional Resources

Integration Examples

Mautic Forms

Example of embedding a Mautic form on a website: