Я пытаюсь реализовать этот забавный проект, состоящий из нескольких экземпляров postfix/dovecot внутри контейнера Docker.

Я ищу «что-то», которое перенаправило бы любой входящий запрос через порт 25 (любой может быть позже 143, 993) в нужный контейнер на другом порту.

Вот идея:

                        +-------+                    +----------+
(internet)----(port 25) |mainbox| ---- (port 52032)  |container1| (postfix)
                        +-------+  |                 +----------+
                                   \   (port 52033)  +----------+
                                                     |container2| (postfix)
                                                     +----------+

Таким образом, идея состоит в том, чтобы «перенаправить» запросы, поступающие на порт 25 и основанные на «имени хоста», для перенаправления на правильный порт (внутри); в идеале было бы здорово управлять этим «отображением» с помощью базы данных / текстового файла

Есть идеи ? Направления?

1 ответ1

1

Вы должны использовать контейнеры послов докера и избегать жестких связей между контейнерами для обеспечения переносимости сервиса. Это легко позволит вам изменить настройки, если вам нужно поговорить с другим или дополнительным контейнером postfix. Вы просто перезапускаете контейнер postfix-ambassador, к которому подключен ваш почтовый ящик. В случае обработки почты, когда вы можете захотеть добавить различные другие этапы обработки, например, SpamAssassin, ClamAV и т.д., Этот подход поможет в создании связанного процесса.

Этот шаблон поддерживает перемещение вашего постфиксного сервера на другой хост докера.

Вот сообщение в блоге, описывающее шаблон - http://fosiki.com/blog/2013/12/05/docker-container-network-portability/

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .