Postfix에서 log를 출력하지 않음 (Docker container에서 Postfix install)

과제.


Docker container에서 install의 Postfix는 log를 출력하지 않습니다.
로그를 출력하고 싶습니다.

컨디션


Docker의 base image는 php:8.0-fpm을 사용합니다.
php:8.0-fpm의base image는debian:bullseye-slim입니다.
Postfix의version은 3.5입니다.

로그가 나타나지 않는 이유


  • Postfix는 기본적으로 systlog를 사용합니다.
    Postfix log는 syslog에서 생성됩니다.
    기본값입니다.
    자세한 내용은 공식 홈페이지를 보세요.

  • debian의 slim image에 systlog가 설치되어 있지 않습니다.
    debian의 slim image에 Syslog가 설치되어 있지 않습니다.
    슬림 이미지는 최소한의 기능이 설치된 이미지이기 때문이다.
    자세한 내용은 공식 홈페이지를 보세요.
  • 이 두 가지 이유로 Postfix에 출력 로그가 없습니다.

    해결 방법 1


    Postfix 자체 로그 시스템을 활용한 해법이다.
    원칙적으로 로그의 출력은syslog 방법을 사용하지 않는다.
    main.cf에 다음 항목을 추가합니다.
    maillog_file = /var/log/yourLogFileName.log
    
    /var/log/yourLogFileName.로그가 로그로 출력됩니다.
    자세한 내용은 공식 홈페이지를 보세요.
    주의
  • main.cf에 추가된 내용을 반영하기 위해서는 진행postfix reload이 필요하다.
  • postfix reload 진행postfix start이 필요합니다.위하여postfix startmain.어느 정도 cf의 설정 항목을 보충해야 한다.main.cf의 설정 방법에 관해서는 이 사이트 등을 참고하십시오.
  • 해결 방법2


    이것은 syslog를 설치하는 해결 방법입니다.
    원칙적으로 로그의 출력은syslog를 사용하는 방법이다.
    예를 들어container에서 다음 명령을 실행합니다.
    apt install rsyslog -y
    /etc/init.d/rsyslog start
    
    /var/log/mail.로그가 로그로 출력됩니다.
    container에syslog를 설치하는 방법이 많다고 생각합니다. 다른 방법이 좋으면 조사해 보세요.

    좋은 웹페이지 즐겨찾기