#Dockerfile for a Postfix email relay service
FROM alpine:3.20.3

COPY run.sh /

# hadolint ignore=DL3018
RUN apk update --no-cache && \
    apk add --no-cache curl bash gawk cyrus-sasl cyrus-sasl-login cyrus-sasl-crammd5 mailx postfix-pcre \
    postfix && \
    mkdir -p /var/log/supervisor/ /var/run/supervisor/ && \
    chmod +x /run.sh && \
    newaliases

EXPOSE 25
#ENTRYPOINT ["/run.sh"]
CMD ["/run.sh"]

# health check
HEALTHCHECK --interval=30s \
  CMD curl -s smtp://localhost:25 -v >/dev/null 2>&1