due to the need to modernize our Mailman installation, I want to switch two installations to Mailman3.
My options currently seem to be:
One problem which is present in all 3 cases is that the mailman server (or container) is not on the same machine as Postfix. For mail input and output that's not a problem since Mailman speaks LMTP and SMTP, but sharing the Postfix maps between machines is a bit tricky. NFS should theoretically work, but getting all permissions right is not trivial. This is somewhat more pressing in Docker where I don't even have control over the UID running Mailman inside the container.
Therefore I would like to add a socketmap service to Mailman that Postfix can query to get map information. Since this idea is probably not totally original I'd like to ask on this list whether someone already tried such a thing, and what their experiences were.
Just to keep anyone looking at this up-to-date:
I've settled for option 2 (installing from source) and fixed the separate-host problem by implementing an ersatz postmap script which calls postmap and then uses rsync to copy the files to the mail host:
#!/bin/bash # in addition to running postmap, copy the files to our mail server /usr/sbin/postmap $1 rsync -a $1 $1.db mail.heeg.de::postfix-mailman3/
Of course this requires setting up an entry in /etc/rsyncd.conf but then it works reasonably well.
The socketmap service is still something I'd like to tackle when I have time.