docker-compose에서 Dovecot과 Postfix를 연결하는 방법

docker-compose에서 Dovecot과 Postfix를 연결하는 방법

이걸로 메일서버를 만들었어요 지도 시간.

모든 것이 작동하지만 mysql, postfix 및 dovecot을 컨테이너에 넣고 싶습니다. 저는 mysql 이미지를 사용했습니다. 나는 내 자신의 Postfix 컨테이너를 만들었습니다.

postfix 컨테이너에서 mysql 데이터베이스에 연결하는 데 문제가 없습니다.

문제는 Postfix와 Dovecot 연결에 있습니다.

~ 안에/etc/postfix/main.cf:

virtual_transport = lmtp:unix:private/dovecot-lmtp

~ 안에/etc/dovecot/conf.d/10-master.conf

service lmtp {
   unix_listener /var/spool/postfix/private/dovecot-lmtp {
       mode = 0600
       user = postfix
       group = postfix
   }
  #inet_listener lmtp {
    # Avoid making LMTP visible for the entire internet
    #address =
    #port =
  #}
} 

Dovecot 컨테이너를 실행할 때 OUTPUT이 표시됩니다. Fatal: service(lmtp) User doesn't exist: postfix (See service lmtp { unix_listener /var/spool/postfix/private/dovecot-lmtp { user } } setting)

Postfix를 Dovecot과 연결할 수 있도록 구성을 어떻게 변경합니까?

답변1

비슷한 것을 설정했습니다.

관련 문서는 여기에 있습니다.https://wiki2.dovecot.org/HowTo/PostfixAndDovecotSASL

MDA의 호스트 이름을 사용하여 컨테이너에 연결하는 것이 즐겁지 않으므로 dovecot에 고정 IP를 제공하십시오.

당신은 dovecot이 IP를 통한 lmtp 연결을 수신하기를 원하므로 해당 비트를 주석 처리하지 않기를 원합니다. 그리고 거기에 유닉스 소켓에 대한 구성을 남겨두면 작동하지 않는다는 것을 알았습니다. 어쨌든 원하지 않는 것처럼 들리므로 문제가 되지 않습니다. :)

/etc/dovecot/conf.d/10-master.conf

service lmtp {
  inet_listener lmtp {
    port = 24
  }
}

/etc/postfix/main.cf

virtual_transport = lmtp:inet:127.20.0.201:24

/etc/postfix/master.cf에서도 참조했지만 인증을 위해 dovecot을 사용하지 않는 것 같으므로 거기에서 설정할 필요가 없을 수도 있습니다.

또한 lmtp는 암호화되지 않았으므로 postfix와 dovecot에 자체 브리지를 제공하는 것을 고려해 보십시오.

관련 정보