Files
OSIT-Mailman3/core/Dockerfile
Abhilash Raj 743bc8522c Force start mailman inside the container.
Even though the 'master.lck' is supposed to prevent race conditions, it needs to
be manually removed if the container did not shutdown gracefully. Remove the
manual check for the lock file and force mailman to remove it.

Also, set the stop_grace_period to 30s, which would allow Core to stop
gracefully and not leave the lock file over. Default value in case of Docker is 10s.
2017-11-03 10:59:08 -07:00

30 lines
850 B
Docker

FROM python:3.6-alpine
MAINTAINER Abhilash Raj
#Add startup script to container
COPY docker-entrypoint.sh /usr/local/bin/
#Install all required packages, add user for executing mailman and set execution rights for startup script
RUN apk update \
&& apk add --virtual build-deps gcc python3-dev musl-dev postgresql-dev \
&& apk add bash su-exec postgresql-client mysql-client \
&& pip install psycopg2 \
mailman==3.1.0 \
mailman-hyperkitty==1.1.0 \
pymysql \
alembic==0.9.5 \
&& apk del build-deps \
&& adduser -S mailman
# Change the working directory.
WORKDIR /opt/mailman
#Expose the ports for the api (8001) and lmtp (8024)
EXPOSE 8001 8024
ENV MAILMAN_CONFIG_FILE /etc/mailman.cfg
ENTRYPOINT ["docker-entrypoint.sh"]
CMD ["master", "--force"]