albertito/chasquid
SMTP (email) server with a focus on simplicity, security, and ease of operation.
2.1K
chasquid is an SMTP (email) server with a focus on simplicity, security, and ease of operation.
It sends and receives email as a typical MTA (for example, can be used instead of Postfix or Exim), and it is designed mainly for individuals and small groups.
Images are automatically built and tagged with the corresponding branch name.
main
: stable release.next
: upcoming release, for testing purposes.See the official documentation for more details and updated information.
First, pull the image into your target machine:
$ docker pull albertito/chasquid:main
You will need a data volume to store persistent data, outside the image. This will contain the mailboxes, user databases, etc.
$ docker volume create chasquid-data
To add your first user to the image:
$ docker run \
--mount source=chasquid-data,target=/data \
-it --entrypoint=/add-user.sh \
albertito/chasquid:master
Email (full user@domain format): pepe@example.com
Password:
pepe@example.com added to /data/dovecot/users
Upon startup, the image will obtain a TLS certificate for you using Let's
Encrypt. You need to tell it the domain(s) to get a
certificate from by setting the AUTO_CERTS
variable.
Because certificates expire, you should restart the container every week or so. Certificates will be renewed automatically upon startup if needed.
In order for chasquid to get access to the source IP address, you will need to use host networking, or create a custom docker network that does IP forwarding and not proxying.
Finally, start the container:
$ docker run -e AUTO_CERTS=mail.yourdomain.com \
--mount source=chasquid-data,target=/data \
--network host \
albertito/chasquid:main
docker pull albertito/chasquid