I'm frustrated at the time it takes my container to shut down when using the S6 overlay service. As far as i understand, s6 should run as PID 1 and should issue the SIGTERM to all children processes (postfix) when you issue docker stop
. I confirmed it is running as PID 1 but still takes 10sec to stop. I tried with Tini init system and it closes instantaneously. What am i doing wrong here?
Dockerfile
FROM ubuntu:latest
# Add S6 Overlay
ADD https://github.com/just-containers/s6-overlay/releases/download/v2.2.0.1/s6-overlay-amd64-installer /tmp/
RUN chmod +x /tmp/s6-overlay-amd64-installer && /tmp/s6-overlay-amd64-installer /
# Add S6 Socklog
ADD https://github.com/just-containers/socklog-overlay/releases/download/v3.1.1-1/socklog-overlay-amd64.tar.gz /tmp/
RUN tar xzf /tmp/socklog-overlay-amd64.tar.gz -C /
ARG TZ=America/Denver
RUN ln -snf /usr/share/zoneinfo/${TZ} /etc/localtime && echo ${TZ} > /etc/timezone
RUN ["/bin/bash", "-c","debconf-set-selections <<< \"postfix postfix/mailname string test.com\""] && \
["/bin/bash", "-c","debconf-set-selections <<< \"postfix postfix/main_mailer_type string 'Internet Site'\""]
RUN apt update && \
apt upgrade -y && \
DEBIAN_FRONTEND=noninteractive apt install -y --no-install-recommends \
postfix && \
apt -y autoremove && \
apt -y clean autoclean && \
rm -drf /var/lib/apt/lists/* /tmp/* /var/tmp /var/cache
ENTRYPOINT ["/init"]
CMD [ "postfix", "start-fg" ]
Build the Image: docker build -t test .
Run the Image: docker run --name test --rm -d test