Eternals Mailer
StableA self-hosted mail catcher for local development and testing. Capture and inspect emails without sending them to real recipients.
Overview
Eternals Mailer is an email testing tool for developers. It captures emails sent by your application during development so you can inspect them in a clean web UI. Point your app’s SMTP config at Eternals Mailer, and every outgoing email lands in your local inbox — safely, instantly.
Built with Go for SMTP capture, a NestJS API, a React web UI, PostgreSQL for persistence, and Redis for caching, Mailer lets you view HTML/text bodies, headers, and attachments for every captured email. No emails leave your environment, making it perfect for development and QA testing.
How to Use This Image
Quick Start
docker run -d \ --name ec-mailer \ --restart always \ -p 8502:8502 \ -p 1025:1025 \ -e POSTGRES_URL=postgresql://postgres:password@host:5432/mailer \ -v mailer:/app/attachments \ eternalscloud/mailer:latestOnce the container is running:
- Web UI: Open
http://localhost:8502in your browser - SMTP Server: Configure your application to send mail to
localhost:1025
Docker Compose
services: ec-mailer: image: eternalscloud/mailer:latest container_name: ec-mailer restart: always ports: - "8502:8502" - "1025:1025" environment: - POSTGRES_URL=postgresql://postgres:password@db:5432/mailer volumes: - mailer:/app/attachments depends_on: - db
db: image: postgres:18.4 restart: always environment: POSTGRES_PASSWORD: password POSTGRES_DB: mailer volumes: - postgres:/var/lib/postgresql/data
volumes: mailer: postgres:Run with:
docker compose up -dEnvironment Variables
| Variable | Required | Description |
|---|---|---|
POSTGRES_URL | Yes | PostgreSQL connection URL (e.g., postgresql://postgres:password@host:5432/mailer) |
Exposed Ports
| Port | Description |
|---|---|
8502 | Web UI and REST API |
1025 | SMTP server |
Volumes
| Path | Description |
|---|---|
/app/attachments | Mail attachment storage |
Mount a volume to
/app/attachmentsto persist email attachments across container restarts.
Need more? See the full documentation for SMTP client examples and integration guides.
Features
- Token-based authentication
- Real-time email capture
- Full message inspection
- Modern web UI with dark mode
Use Cases
- Test email templates
- Debug email delivery
- Verify SMTP integration
- QA workflows