53 lines
1.8 KiB
Docker
53 lines
1.8 KiB
Docker
#
|
|
# simple postfix smtp relay
|
|
#
|
|
|
|
FROM alpine:3.13
|
|
|
|
# standardized labels
|
|
LABEL author="Asif Bacchus <asif@bacchus.cloud>"
|
|
LABEL maintainer="Asif Bacchus <asif@bacchus.cloud>"
|
|
LABEL org.label-schema.schema-version="1.0"
|
|
LABEL org.label-schema.docker.cmd=""
|
|
LABEL org.label-schema.description="Simple postfix smtp mail relay on Alpine."
|
|
LABEL org.label-schema.url="https://git.asifbacchus.app/ab-docker/postfix-smtp-relay"
|
|
LABEL org.label-schema.usage="https://git.asifbacchus.app/ab-docker/postfix-smtp-relay"
|
|
LABEL org.label-schema.vcs-url="https://git.asifbacchus.app/ab-docker/postfix-smtp-relay.git"
|
|
|
|
# install packages and clean-up
|
|
RUN apk --no-cache add \
|
|
ca-certificates \
|
|
postfix \
|
|
bind-tools \
|
|
&& rm -f /var/cache/apk/*
|
|
|
|
EXPOSE 25
|
|
|
|
HEALTHCHECK --interval=30s --timeout=5s --start-period=30s --retries=3 CMD [ "/usr/sbin/postfix", "status" ]
|
|
|
|
# set environment variables
|
|
ENV TZ=Etc/UTC
|
|
ENV LOCAL_HOSTNAME=""
|
|
ENV LOCAL_DOMAINNAME=""
|
|
ENV LOCAL_ENCRYPTION=false
|
|
ENV SMARTHOST=""
|
|
ENV SMARTHOST_PORT=587
|
|
ENV SMARTHOST_USERNAME=""
|
|
ENV SMARTHOST_PASSWORD=""
|
|
ENV SMARTHOST_ENCRYPTION="OPTIONAL"
|
|
|
|
# copy configuration snippets
|
|
COPY main.cf.insert /tmp/main.cf.insert
|
|
COPY entrypoint.sh /usr/local/bin/entrypoint.sh
|
|
|
|
# set entrypoint and default command
|
|
ENTRYPOINT [ "/usr/local/bin/entrypoint.sh" ]
|
|
CMD [ "/usr/sbin/postfix", "start-fg" ]
|
|
|
|
# set parameters, vendor, version and build-date labels
|
|
LABEL org.label-schema.docker.params="TZ=Etc/UTC, HOSTNAME=(container hostname), DOMAINNAME=(derived from hostname), LOCAL_ENCRYPTION=false|optional|true, SMARTHOST=..., SMARTHOST_PORT=587, SMARTHOST_USERNAME=..., SMARTHOST_PASSWORD=..., SMARTHOST_ENCRYPTION=optional|false|true"
|
|
LABEL org.label-schema.vendor="Alpine 3.13, Postfix 3.5.10-r0"
|
|
LABEL org.label-schema.version="1.0"
|
|
ARG BUILD_DATE
|
|
LABEL org.label-schema.build-date=${BUILD_DATE}
|