This is a simple container image to send emails via SMTP.
It is very small, the compressed size is only 3.92MB in x86_64 architecture, thus is very suitable for use in CI.
You can use it like this:
docker run --name mailer --rm \
-e MAILER_FROM_ADDRESS="user@example.com" \
-e MAILER_FROM_NAME="Your Name" \
-e MAILER_RECIPIENTS="foo@gmail.com,bar@outlook.com" \
-e MAILER_SUBJECT="Hello!" \
-e MAILER_BODY="This is\nthe body." \
-e MAILER_BODY_IS_HTML="false" \
-e MAILER_ATTACHMENT_PATH="/path/to/file" \
-e MAILER_ATTACHMENT_TYPE="text/plain" \
-e MAILER_USER_NAME="user@example.com" \
-e MAILER_PASSWORD="password" \
-e MAILER_HOST="smtp.example.com" \
-e MAILER_PORT="465" \
-e MAILER_USE_STARTTLS="false" \
ghcr.io/sainnhe/mailer:latestThe executable is placed in /usr/local/bin/mailer, you can manually run it in a container.
This image is available in the following registries:
MAILER_FROM_ADDRESS: Send email from this address.MAILER_FROM_NAME: The name of the sender.MAILER_RECIPIENTS: Comma separated list of recipients to send the mail to.MAILER_SUBJECT: The subject.MAILER_BODY: The body. Use\nto break new line.MAILER_BODY_IS_HTML(optional): If set to"true",MAILER_BODYis rendered in HTML. If set to"false",MAILER_BODYis rendered in plain text. Default to"false".MAILER_ATTACHMENT_PATH(optional): Attachment file path. Default to"".MAILER_ATTACHMENT_TYPE(optional): Attachment file type. One of media types in https://www.iana.org/assignments/media-types/media-types.xhtml. Default to"text/plain".MAILER_USER_NAME: SMTP user name.MAILER_PASSWORD: SMTP password.MAILER_HOST: SMTP host.MAILER_PORT: SMTP port.MAILER_USE_STARTTLS: If set to"false", use TLS. If set to"true", use STARTTLS.
Here is an example of using this image in Woodpecker CI:
branches: master
pipeline:
test:
image: <your-image>
commands:
- <your-test-commands>
notify:
image: ghcr.io/sainnhe/mailer:latest
commands:
- mailer
secrets:
[
MAILER_FROM_ADDRESS,
MAILER_FROM_NAME,
MAILER_RECIPIENTS,
MAILER_USER_NAME,
MAILER_PASSWORD,
MAILER_HOST,
MAILER_PORT,
MAILER_USE_STARTTLS,
]
environment:
- MAILER_SUBJECT=Run Failed
- MAILER_BODY=${CI_BUILD_LINK}
when:
status:
- failureGPL3 © sainnhe