38 lines
1.3 KiB
Docker
38 lines
1.3 KiB
Docker
# NAME leenooks/nginx
|
|
# VERSION latest
|
|
|
|
FROM nginx:alpine
|
|
|
|
# Change to http respositories, so they we can cache the install packages
|
|
RUN if [ -n ${HTTP_PROXY} ] ; then sed -i -e s'/https/http/' /etc/apk/repositories; fi
|
|
|
|
RUN apk add --no-cache nginx nginx-mod-mail bash
|
|
|
|
# Add acme-lego Certbot
|
|
ENV LEGOVER=v4.14.2
|
|
RUN curl -sL https://github.com/go-acme/lego/releases/download/${LEGOVER}/lego_${LEGOVER}_linux_amd64.tar.gz | tar -C /usr/sbin -xzf -
|
|
|
|
# Configuration
|
|
COPY etc/nginx/nginx.conf /etc/nginx
|
|
COPY etc/nginx/default.d /etc/nginx/default.d
|
|
COPY etc/nginx/include.d /etc/nginx/include.d
|
|
RUN chmod 444 /etc/nginx/default.d/ssl/* && \
|
|
chmod 400 /etc/nginx/default.d/ssl/default.key /etc/nginx/default.d/ssl/dhparams.pem
|
|
|
|
# Default SSL cert
|
|
RUN mkdir -p /etc/nginx/conf.d/ssl && \
|
|
ln -s ../../default.d/ssl/default.crt /etc/nginx/conf.d/ssl/mail.crt && \
|
|
ln -s ../../default.d/ssl/default.key /etc/nginx/conf.d/ssl/mail.key
|
|
COPY ssl.sh /usr/sbin/
|
|
COPY init-docker /sbin/
|
|
|
|
COPY var/www/maintenance /var/www/maintenance
|
|
|
|
# Expose our web root and log directories log.
|
|
#VOLUME [ "/etc/nginx/conf.d", "/etc/nginx/default.d", "/etc/nginx/include.d" ]
|
|
|
|
# Starting
|
|
EXPOSE 80 443 25 110 143
|
|
LABEL cron.container.weekly root#/usr/sbin/ssl.sh lego renew
|
|
ENTRYPOINT [ "/sbin/init-docker" ]
|