Mailu Server Docker Role 🚀

This guide provides instructions for setting up, operating, and maintaining the Mailu server Docker role.

Table of Contents 📖

Setup ⚙️

Fetchmail Issues 📨

Fetchmail might not work properly with large amounts of data. For more information, refer to this issue.

Deactivating Fetchmail

Before uninstalling Fetchmail, ensure you remove all fetched accounts from the administration panel.

Fetchmail Security Concerns 🔐

There are known security concerns with Fetchmail as stated in the German Wikipedia. If you require Fetchmail functions in the future, consider creating a Docker container for Getmail as it is considered more secure.

Fetchmail Workaround 🔄

If you need to receive emails from another account, follow these steps:

  1. Redirect your emails to your new email account.
  2. Export all data from your original account.
  3. Import all data to your new account.

Port Management 🌐

Check for any port conflicts and manually change the conflicting ports if necessary. Use the following command to verify:

netstat -tulpn

Admin Account Creation 👤

To use Mailu, create the primary administrator user account, admin@{{hostname}}, using the command below. Replace PASSWORD with your preferred password:

docker-compose -p mailu exec admin flask mailu admin {{admin}} {{hostname}} PASSWORD

CLI User Management 🛠️

For managing users, follow the instructions in the official Mailu CLI documentation.

Starting the Server ▶️

To start the server, use the following command:

docker-compose -p mailu up -d

Debugging 🕵️‍♂️

Database Access 📂

To access the database, use the following command:

docker-compose exec -it database mysql -u root -D mailu -p

Container Access 🖥️

To access the front container, use this command:

docker-compose exec -it front /bin/bash

Restarting Services 🔄

To restart all services, use the following command:

docker-compose restart

Resending Queued Mails ✉️

To resend queued mails, use this command:

docker-compose exec -it smtp postqueue -f

Testing 🧪

Use the following tools for testing:

Updates 🔄

For instructions on updating your Mailu setup, follow the official Mailu maintenance guide.

Queue Management 📬

To manage the Postfix email queue in Mailu, you can use the following commands:

  • Display the email queue:

    docker compose exec -it smtp postqueue -p
    
  • Delete all emails in the queue:

    docker compose exec -it smtp postsuper -d ALL
    

Spam Issues 🚨

Inspect 🔎

Use the following tools to monitor your domain and email deliverability:

Blacklist Check 🚫

If your domain is blacklisted, you can check the status with these services and take steps to remove your domain if necessary:

Cloudmark Reset Request 🔄

If your IP or domain is flagged by Cloudmark, you can submit a reset request:

OIDC Support 🔐

This role now supports OpenID Connect (OIDC) authentication with Mailu-OIDC! 🎉

To enable OIDC authentication, simply set the following variable:

oidc:
  enabled: true

For more details, check out the Mailu-OIDC repository.

References 🔗


For more information about this role, visit the GitHub repositories:

About this Role

This Mailu Docker role was developed by Kevin Veen-Birkenbach.

This README.md was optimized with the help of ChatGPT🚀 and this conversations: