2019-10-16 23:44:47 -06:00
FROM nginx:mainline-alpine
2019-10-17 01:34:52 -06:00
# add fun error pages & LetsEncrypt challenge directory outside webroot
2019-10-17 00:13:42 -06:00
RUN apk --no-cache add git \
&& cd /usr/share/nginx/html \
&& rm -rf * \
&& git clone https://git.asifbacchus.app/asif/fun-errorpages.git /tmp \
&& apk del git \
&& mv /tmp/errorpages/ ./ \
&& rm -rf /tmp/* \
2019-10-17 01:34:52 -06:00
&& rm -rf /tmp/.git* \
&& mkdir /LEchallenge
2019-10-17 00:13:42 -06:00
2019-10-16 23:44:47 -06:00
# standardized labels
LABEL maintainer = "Asif Bacchus <asif@bacchus.cloud>"
2019-10-17 01:01:09 -06:00
LABEL org.label-schema.cmd= "docker run -d --name ab-nginx [--env-file ab-nginx.params] [-v certs:/certs] ab-nginx"
LABEL org.label-schema.description= "NGINX-mainline-alpine with more logical file location layout and automatic SSL set up if certificates are provided."
2019-10-16 23:44:47 -06:00
LABEL org.label-schema.name= "ab-nginx"
LABEL org.label-schema.schema-version= "1.0"
LABEL org.label-schema.url= "https://git.asifbacchus.app/ab-docker/ab-nginx"
LABEL org.label-schema.usage= "https://git.asifbacchus.app/ab-docker/ab-nginx/wiki"
LABEL org.label-schema.vcs-url= "https://git.asifbacchus.app/ab-docker/ab-nginx.git"
LABEL org.label-schema.version= "0.1-beta"
# copy configuration files
COPY entrypoint.sh /entrypoint.sh
COPY config /etc/nginx/
COPY sites /etc/nginx/sites/
2019-10-17 01:01:20 -06:00
COPY webroot /usr/share/nginx/html/
2019-10-16 23:44:47 -06:00
# expose ports
EXPOSE 80 443
# default environment variables
2019-10-17 00:13:51 -06:00
ENV SERVER_NAMES = "_"
ENV HSTS = FALSE
ENV TLS13_ONLY = FALSE
2019-10-16 23:44:47 -06:00
# entrypoint script
ENTRYPOINT [ "/entrypoint.sh" ]
# run NGINX by default
CMD [ "nginx" , "-g" , "daemon off;" ]
# add build date label
ARG BUILD_DATE
LABEL org.label-schema.build-date= ${ BUILD_DATE }