Wouldn't it improve maintainability and also robustness if the different mail services are separately run in containers with docker-compose instead using just one single monolithic container?
I've thought about that, but start-mailserver.sh does a lot of magic allowing to startup a full mail server in less than 10 minutes. There are a lot dependencies: if you activate amavis, amavis container should be started, and postfix conf should be adapted.
That's why I voluntary chose 3 years ago to have this monolithic approach.
I'm open to changes, that's why I open sourced this image. But be careful, it's not that easy.
Feel free to share your plan if you have one.
@strarsis any suggestions on how to approach this?
There is a similar mail server solution that separated out the services:
https://github.com/mailcow/mailcow-dockerized
Another good example of running a mail server with separated docker compose services can be found in this docker compose file.
There are other projects that work in other ways. While I agree with the basic idea of separate docker containers I don't see how this project could be changed that way without a major effort and breaking changes. It would be better to do that in a fork. Furthermore nothing has happened for years. I'll close this.
Most helpful comment
Another good example of running a mail server with separated docker compose services can be found in this docker compose file.