RainLoop + tomav / docker-mailserver: не удается подключиться к серверу из клиента RainLoop Webmail

Для начала я внимательно следил за этим руководством: https://www.davd.eu/byecloud-building-a-mailserver-with-modern-webmail/

Я пытаюсь создать почтовый сервер для своего сервера, но решил сначала протестировать вышеуказанную реализацию локально. Убедитесь, что я могу все настроить и запустить, по крайней мере, чтобы увидеть, чего мне следует ожидать, прежде чем пробовать это на сервере. Вот что я сделал:

  1. Добавлен «127.0.0.1 mail.fancydomain.tld» в «/ etc / hosts» (я хотел начать с использования mail.fancydomain.tld, а не моего фактического домена, на котором будет находиться почтовый сервер, чтобы минимизировать любые изменения, следуя руководству)
  2. Я создал этот docker-compose.yml:

       version: "3"
    
        services:
          rainloop:
            image: hardware/rainloop
            links:
              - mail
            volumes:
              - ./data/rainloop:/rainloop/data
    
          mail:
            image: tvial/docker-mailserver:latest
            restart: always
            hostname: mail
            domainname: fancydomain.tld
            container_name: mail
            ports:
              - "25:25"
              - "143:143"
              - "587:587"
              - "993:993"
              - "4190:4190"
            volumes:
              - ./data/mail/data:/var/mail
              - ./data/mail/state:/var/mail-state
              - ./mail/config:/tmp/docker-mailserver/
              - ./data/entry/acme/acme-v01.api.letsencrypt.org/sites/mail.fancydomain.tld:/tmp/ssl:ro
            environment:
              - ENABLE_SPAMASSASSIN=1
              - ENABLE_CLAMAV=1
              - ENABLE_FAIL2BAN=1
              - ENABLE_POSTGREY=1
              - ONE_DIR=1
              - DMS_DEBUG=0
              - ENABLE_MANAGESIEVE=1
            cap_add:
              - NET_ADMIN
    
          entry:
            image: abiosoft/caddy:0.10.4
            restart: always
            privileged: true
            links:
              - rainloop
            ports:
              - "80:80"
              - "443:443"
            volumes:
              - ./entry/Caddyfile:/etc/Caddyfile
              - ./data/entry:/root/.caddy
    

    Есть небольшая разница между этим "docker-compose.yml" и тем, который предоставлен ранее упомянутым сайтом. Все, что я сделал, - это удалил переменные среды с префиксом «SSL_», как указано в руководстве для людей, которые просто запускают его локально.

  3. Я создал в текущем рабочем каталоге каталог под названием «запись» и создал «Caddyfile» со следующим содержимым:

       http://mail.fancydomain.tld {
            proxy / rainloop:8888 {
                transparent
            }
        }
    

    Опять же, небольшое отличие от представленного на сайте. Я добавил к домену префикс «http: //» по той же причине, что и на шаге 2.

  4. Я успешно запустил контейнер с docker-compose up -d
  5. Я запустил: curl -o setup.sh https://raw.githubusercontent.com/tomav/docker-mailserver/master/setup.sh; chmod a+x ./setup.sh, чтобы получить сценарий установки.
  6. Я запустил: ./setup.sh email add [email protected] fancypassword с этими точными учетными данными, опять же, чтобы минимизировать изменения, которые нужно отслеживать.
  7. Я установил записи DKIM, запустив ./setup.sh config dkim, но я больше не работал с этими записями ... Так как я не уверен, что с ними делать локально.
  8. Я успешно подключился к клиенту RainLoop Webmail через «http: //mail.fancydomain.tld/» и перешел на «http: //mail.fancydomain.tld/? admin» для входа с учетными данными: Login = admin Password = 12345
  9. Я перешел к «Домены»> «Добавить домен» и заполнил форму следующим образом:

    Name: fancydomain.tld
        IMAP
          Server: mail
          Port: 143
          Secure: STARTTLS
        SMTP
          Server: mail
          Port: 587
          Secure: STARTTLS
          Use short login: Checked
          Use authentication: Checked
        SIEVE
          Allow sieve scripts: Checked
          Server: mail
          Port: 4190
          Secure: STARTTLS
    
  10. Отсюда я вернулся в «http: //mail.fancydomain.tld» и попытался войти в клиент веб-почты с этим логином: [email protected] Password = fancypassword

Здесь я получаю сообщение об ошибке: «Не удается подключиться к серверу».

Я не уверен, что делать дальше. Я вообще не знаю, как устранять неполадки. Могу я получить некоторую помощь в том, что мне делать, чтобы устранить неполадки и выяснить, где находится ошибка?

Спасибо!

Обновление от 01.07.18: Итак ... Я добавил "127.0.0.1 mail" в "/ etc / hosts", и это сработало! RainLoop теперь может подключиться к моему почтовому серверу! Однако возникает новый вопрос. Для шага 9 вместо «mail» в трех полях «Сервер» я попробовал «mail.fancydomain.tld», и, согласно тесту, в соединении было отказано. Почему в соединении будет отказано для всего домена, но не для короткого домена?

Развертывание модели машинного обучения с помощью Flask - Angular в Kubernetes
Развертывание модели машинного обучения с помощью Flask - Angular в Kubernetes
Kubernetes - это портативная, расширяемая платформа с открытым исходным кодом для управления контейнерными рабочими нагрузками и сервисами, которая...
Как создать PHP Image с нуля
Как создать PHP Image с нуля
Сегодня мы создадим PHP Image from Scratch для того, чтобы легко развернуть базовые PHP-приложения. Пожалуйста, имейте в виду, что это разработка для...
1
0
1 556
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Решение для этого - убедиться, что оба контейнера, RainLoop и Mail, совместно используют мостовую сеть. Тогда все конфигурации могут остаться прежними.

Другие вопросы по теме