커뮤니티 솔루션

공식 Docker 설정으로 CasaOS에 Mailpit 설치

A 2023 BigBearCasaOS tutorial introduced Mailpit; current upstream docs now define the preferred Docker image, ports, persistence, and security options.

공식 axllent/mailpit Docker 이미지를 사용해 CasaOS에 Mailpit을 설치하세요. 웹 받은편지함에는 8025 포트를, SMTP에는 1025 포트를 사용합니다. 컨테이너를 다시 생성한 후에도 메시지와 설정을 유지하려는 경우에만 /data를 영구 저장하세요.

이전 BigBearCasaOS 튜토리얼은 원클릭 예제로 여전히 유용하지만, 현재 Mailpit 공식 문서에는 정확한 Docker 이미지, 영구 데이터베이스 옵션, 인증 옵션, TLS 및 릴레이 설정이 제공됩니다. 2026년 가이드는 이러한 내용을 기준으로 작성해야 합니다.

Mailpit의 용도

Mailpit은 개발자를 위한 로컬 SMTP 테스트 서버입니다. 애플리케이션은 실제 메일 제공업체 대신 Mailpit으로 테스트 이메일을 보내고, 브라우저에서 메시지를 확인할 수 있습니다.

일반적인 운영용 메일함이나 인터넷에 공개하는 메일 서버가 아닙니다.

공식 Docker 이미지 사용

현재 Mailpit Docker 가이드에는 다음 이미지가 안내되어 있습니다.

axllent/mailpit

CasaOS 포트 매핑

  • 8025/TCP: Mailpit 웹 UI
  • 1025/TCP: SMTP 수신기

다른 서비스가 이미 호스트 포트 중 하나를 사용하고 있다면 컨테이너 측 포트는 그대로 두고 호스트 측 포트만 변경하세요.

기본 CasaOS 사용자 지정 앱 설정

image: axllent/mailpit
restart: unless-stopped
ports:
  - "8025:8025"
  - "1025:1025"

시작한 후 http://CASAOS-IP:8025를 여세요.

애플리케이션을 Mailpit에 연결

같은 Docker 네트워크에 있는 다른 컨테이너에서는 Mailpit 서비스 또는 컨테이너 이름과 1025 포트를 사용하세요. LAN 애플리케이션에서는 CasaOS 호스트 IP와 게시된 SMTP 호스트 포트를 사용하세요.

필요한 경우에만 메시지 영구 저장

현재 Mailpit 문서는 다음 설정을 사용해 /data 아래에 SQLite 데이터베이스를 저장하는 기능을 지원합니다.

MP_DATABASE=/data/mailpit.db

컨테이너를 교체한 후에도 메시지 기록을 유지하려면 CasaOS의 AppData 폴더를 /data에 매핑하세요.

Mailpit을 비공개로 유지

테스트 받은편지함에는 비밀번호 재설정 링크, API 알림 및 애플리케이션 데이터가 포함될 수 있습니다. 웹 UI나 인증되지 않은 SMTP 리스너를 인터넷에 직접 공개하지 마세요.

현재 Mailpit 구성 가이드에는 HTTP, SMTP, POP3 인증과 TLS 옵션이 안내되어 있습니다.

1025 포트를 게시할 필요가 없는 경우

같은 Compose 네트워크의 컨테이너만 Mailpit으로 메일을 보낸다면 SMTP용 호스트 포트 게시를 생략하고 Docker 내부에서만 사용하도록 할 수 있습니다.

Docker 네트워킹 가이드에서 동일한 격리 모델을 설명합니다.

애플리케이션에 연결하기 전에 SMTP 경로 테스트

Mailpit이 시작된 후 웹 UI가 열리는지 확인한 다음, 간단한 SMTP 클라이언트나 애플리케이션에서 테스트 메시지를 하나 보내세요. 메시지가 Mailpit 받은편지함에 즉시 표시되면 네트워크 경로와 SMTP 리스너가 모두 정상적으로 작동하는 것입니다.

애플리케이션에서 연결 거부 오류가 발생하면 자체 네트워크 환경에서 올바른 호스트 이름을 사용하고 있는지 확인하세요. 일반적으로 컨테이너에서는 Mailpit 서비스 이름을 사용하고, LAN의 노트북에서는 CasaOS 호스트 IP를 사용해야 합니다.

테스트에 필요한 경우에만 인증 사용

간단한 로컬 개발에서는 Mailpit이 인증되지 않은 SMTP를 사용할 수 있지만, 현재 구성 옵션은 SMTP 인증과 UI 인증도 지원합니다. 여러 사용자가 랩을 공유하거나 단일 신뢰 Docker 네트워크를 넘어 서비스에 접근할 수 있는 경우 이러한 기능을 활성화하세요.

테스트 메일을 운영 메일과 분리

Mailpit은 메시지를 캡처하여 실제 사용자에게 실수로 전달되지 않도록 설계되었습니다. 개발 및 스테이징 애플리케이션이 명시적으로 Mailpit을 사용하도록 설정하고, 운영 SMTP 자격 증명은 별도의 구성에 보관하세요. 이렇게 하면 테스트용 비밀번호 재설정 이메일이나 알림 폭주가 고객에게 전달되는 것을 방지할 수 있습니다.

장기간 실행되는 랩의 메시지 수 제한

Mailpit은 수천 개의 메시지를 보관할 수 있습니다. 지속적으로 실행되는 CI 또는 홈랩 환경에서는 적절한 최대 한도를 설정하고 실제로 필요한 데이터만 영구 저장하세요. 그렇지 않으면 소규모 테스트 도구가 관리해야 할 또 하나의 데이터베이스로 서서히 커질 수 있습니다.

FAQ

Mailpit의 기본 포트는 무엇인가요?

웹 인터페이스는 8025, SMTP는 1025입니다.

Mailpit은 실제 이메일을 보내나요?

주된 역할은 테스트 이메일을 로컬에서 캡처하는 것입니다. 전달 또는 릴레이를 구성할 수 있지만, 이는 별도로 명시적인 설정이 필요한 기능입니다.

데이터베이스가 필요한가요?

임시 테스트에는 필요하지 않습니다. 메시지 기록을 유지하려면 SQLite 데이터베이스 옵션을 사용하세요.

Mailpit을 공개해야 하나요?

아니요. 신뢰할 수 있는 네트워크에 유지하거나 인증과 TLS로 보호하세요.