dbck/mailtrap

By dbck

Updated 10 months ago

Easy to use mailtrap container for development purposes with Webmail, IMAP, Web-API and SSL-Support.

Image
Developer Tools

10K+

Purpose

This image provides a simple catch all email server for development with smtp, imap and webmail support. The base image is debian and only default packages are used. Only use this image for development purposes, because it is not designed to be secure. If it is connectable from the Internet, it can lead to an open relay mail server.

Inspired by

Performance & Improvements

This images uses dovecot as mda with sdbox as storage format, which delivers much more performance and stability than mbox with thousands of received mails. Also the image provides StartTLS / SSL with a selfsigned snakeoil certificate.

Available Services/Ports

  • SMTP Unsecure/StartTLS (25), SSL (465)
  • Submission Unsecure/StartTLS (587)
  • IMAP Unsecure/StartTLS (143), SSL (993)
  • HTTP (80) => Webmail Roundcube
    • /api/inbox => Inbox messages as simple json objects.

Environment variables with default values for customization

MAILTRAP_USER=mailtrap
MAILTRAP_PASSWORD=mailtrap
MAILTRAP_MAILBOX_LIMIT=51200000
MAILTRAP_MESSAGE_LIMIT=10240000
MAILTRAP_MAX_RECIPIENT_LIMIT=1000
MAILTRAP_ROUNDCUBE_CONFIG_REQUEST_PATH=""

Starting a container

Note: The examples use the flag --rm to automatically remove the container instance, when stopped. The flag --init is required to speed up the shutdown of the container. Also the ports are bound to localhost.

Simple container start

docker container run -d --rm --init --name=mailtrap -p 127.0.0.1:9080:80 -p 127.0.0.1:9025:25 dbck/mailtrap

All ports mapped

docker container run -d --rm --init --name=mailtrap -p 127.0.0.1:9080:80 -p 127.0.0.1:9025:25 -p 127.0.0.1:9587:587 -p 127.0.0.1:9465:465 -p 127.0.0.1:9143:143 -p 127.0.0.1:9993:993 dbck/mailtrap

Suggested port mapping

docker container run -d --rm --init --name=mailtrap -p 127.0.0.1:9080:80 -p 127.0.0.1:9025:25 -p 127.0.0.1:9587:587 -p 127.0.0.1:9143:143 dbck/mailtrap
docker logs -f mailtrap

Example docker-compose configuration

Please look at docker-compose.example.yml

More documentation

For more details be reference the README on github.

Docker Pull Command

docker pull dbck/mailtrap