2016-02-02 05:35:19 +01:00
|
|
|
FROM alpine:edge
|
|
|
|
MAINTAINER adam@diginc.us <adam@diginc.us>
|
|
|
|
|
2016-10-07 02:46:20 +02:00
|
|
|
ENV IMAGE alpine
|
2017-01-08 17:42:39 +01:00
|
|
|
ENV PATH /opt/pihole:${PATH}
|
|
|
|
|
2017-05-05 05:37:26 +02:00
|
|
|
COPY install.sh /usr/local/bin/docker-install.sh
|
2017-01-08 17:42:39 +01:00
|
|
|
ENV setupVars /etc/pihole/setupVars.conf
|
|
|
|
ENV PIHOLE_INSTALL /tmp/ph_install.sh
|
2017-05-19 07:36:53 +02:00
|
|
|
ENV S6OVERLAY_RELEASE https://github.com/just-containers/s6-overlay/releases/download/v1.19.1.1/s6-overlay-amd64.tar.gz
|
2016-10-07 02:46:20 +02:00
|
|
|
|
2017-05-05 05:37:26 +02:00
|
|
|
RUN apk upgrade --update && \
|
|
|
|
apk add bind-tools wget curl bash libcap && \
|
|
|
|
curl -L -s $S6OVERLAY_RELEASE \
|
|
|
|
| tar xvzf - -C / && \
|
|
|
|
docker-install.sh && \
|
2016-02-02 05:35:19 +01:00
|
|
|
rm -rf /var/cache/apk/*
|
|
|
|
|
2017-05-05 05:37:26 +02:00
|
|
|
ENTRYPOINT [ "/init" ]
|
|
|
|
|
2017-05-06 04:48:03 +02:00
|
|
|
ADD s6/alpine-root /
|
|
|
|
COPY s6/service /usr/local/bin/service
|
2016-10-21 05:36:55 +02:00
|
|
|
|
2016-07-08 06:34:41 +02:00
|
|
|
# Things installer did and fix alpine+nginx differences
|
|
|
|
ENV WEBLOGDIR /var/log/nginx
|
|
|
|
ENV PHP_CONFIG '/etc/php5/php-fpm.conf'
|
2016-02-13 20:24:44 +01:00
|
|
|
RUN mkdir -p /etc/pihole/ && \
|
|
|
|
mkdir -p /var/www/html/pihole && \
|
|
|
|
mkdir -p /var/www/html/admin/ && \
|
|
|
|
chown nginx:nginx /var/www/html && \
|
2016-07-08 06:34:41 +02:00
|
|
|
touch ${WEBLOGDIR}/access.log ${WEBLOGDIR}/error.log && \
|
|
|
|
chown -R nginx:nginx ${WEBLOGDIR} && \
|
|
|
|
sed -i 's|^user\s*=.*$|user = nginx|' $PHP_CONFIG && \
|
2017-05-14 00:03:24 +02:00
|
|
|
sed -i '/^;pid/ s|^;||' $PHP_CONFIG && \
|
2016-02-13 20:24:44 +01:00
|
|
|
chmod 775 /var/www/html && \
|
|
|
|
touch /var/log/pihole.log && \
|
|
|
|
chmod 644 /var/log/pihole.log && \
|
|
|
|
chown dnsmasq:root /var/log/pihole.log && \
|
2016-04-26 06:18:41 +02:00
|
|
|
sed -i "s/@INT@/eth0/" /etc/dnsmasq.d/01-pihole.conf && \
|
2017-05-05 05:37:26 +02:00
|
|
|
setcap CAP_NET_BIND_SERVICE=+eip `which dnsmasq` && \
|
2017-05-14 01:43:34 +02:00
|
|
|
cp -f /usr/bin/list.sh /opt/pihole/list.sh && \
|
2017-01-09 02:13:16 +01:00
|
|
|
echo 'Done!'
|
2016-04-26 06:18:41 +02:00
|
|
|
|
2016-07-08 06:34:41 +02:00
|
|
|
# php config start passes special ENVs into
|
|
|
|
ENV PHP_ENV_CONFIG '/etc/php5/fpm.d/envs.conf'
|
|
|
|
ENV PHP_ERROR_LOG '/var/log/nginx/error.log'
|
2016-10-30 18:13:52 +01:00
|
|
|
COPY ./start.sh /
|
2016-10-30 19:47:06 +01:00
|
|
|
COPY ./bash_functions.sh /
|
2016-02-13 20:24:44 +01:00
|
|
|
|
2017-05-06 04:48:03 +02:00
|
|
|
# IPv6 disable flag for networks/devices that do not support it
|
2016-09-01 05:10:53 +02:00
|
|
|
ENV IPv6 True
|
|
|
|
|
2016-02-13 20:24:44 +01:00
|
|
|
EXPOSE 53 53/udp
|
|
|
|
EXPOSE 80
|
|
|
|
|
2017-05-05 05:37:26 +02:00
|
|
|
ENV S6_LOGGING 0
|
|
|
|
ENV S6_KEEP_ENV 1
|
2017-05-19 07:36:53 +02:00
|
|
|
ENV S6_BEHAVIOUR_IF_STAGE2_FAILS 2
|
2017-05-05 05:37:26 +02:00
|
|
|
|
2017-01-18 05:49:42 +01:00
|
|
|
SHELL ["/bin/bash", "-c"]
|