• Paris, FR
  • Joined on 2023-05-23

pihole-unbound (latest)

Published 2026-02-18 15:04:37 +01:00 by iGoX

Installation

docker pull code.igox.org/igox/pihole-unbound:latest
sha256:84a7f6b9fc9063d0e68e2535f80ffcd59671f072bfb4b84002aa8d53b4d91944

Images

Digest OS / Arch Size
82a52c2c25 linux/amd64 42 MiB
8c279f3b6e linux/arm64 43 MiB
946d8278f1 linux/arm/v7 39 MiB

Image Layers ( linux/arm/v7)

ADD alpine-minirootfs-3.23.3-armv7.tar.gz / # buildkit
CMD ["/bin/sh"]
ARG TARGETPLATFORM=linux/arm/v7
ARG WEB_BRANCH=master
ARG CORE_BRANCH=master
ARG FTL_BRANCH=master
ARG PIHOLE_DOCKER_TAG=2026.02.0
ARG PADD_BRANCH=master
ARG CORE_FORK=pi-hole
ARG WEB_FORK=pi-hole
ARG PADD_FORK=pi-hole
ARG PIHOLE_UID=1000
ARG PIHOLE_GID=1000
ENV DNSMASQ_USER=pihole
ENV FTL_CMD=no-daemon
RUN |11 TARGETPLATFORM=linux/arm/v7 WEB_BRANCH=master CORE_BRANCH=master FTL_BRANCH=master PIHOLE_DOCKER_TAG=2026.02.0 PADD_BRANCH=master CORE_FORK=pi-hole WEB_FORK=pi-hole PADD_FORK=pi-hole PIHOLE_UID=1000 PIHOLE_GID=1000 /bin/sh -c apk add --no-cache bash bash-completion bind-tools binutils coreutils curl git grep iproute2 jq libcap logrotate ncurses procps-ng psmisc shadow sudo tzdata unzip wget # buildkit
RUN |11 TARGETPLATFORM=linux/arm/v7 WEB_BRANCH=master CORE_BRANCH=master FTL_BRANCH=master PIHOLE_DOCKER_TAG=2026.02.0 PADD_BRANCH=master CORE_FORK=pi-hole WEB_FORK=pi-hole PADD_FORK=pi-hole PIHOLE_UID=1000 PIHOLE_GID=1000 /bin/sh -c if [ "${PIHOLE_DOCKER_TAG}" = "nightly" ]; then apk add --no-cache gdb screen && echo "ulimit -c unlimited" >> /etc/profile && echo "handle SIGHUP nostop SIGPIPE nostop SIGTERM nostop SIG32 nostop SIG33 nostop SIG34 nostop SIG35 nostop SIG36 nostop SIG37 nostop SIG38 nostop SIG39 nostop SIG40 nostop SIG41 nostop" > /root/.gdbinit; fi # buildkit
ADD https://ftl.pi-hole.net/macvendor.db /macvendor.db # buildkit
COPY crontab.txt /crontab.txt # buildkit
ADD --chmod=0755 https://raw.githubusercontent.com/pi-hole/PADD/master/padd.sh /usr/local/bin/padd # buildkit
RUN |11 TARGETPLATFORM=linux/arm/v7 WEB_BRANCH=master CORE_BRANCH=master FTL_BRANCH=master PIHOLE_DOCKER_TAG=2026.02.0 PADD_BRANCH=master CORE_FORK=pi-hole WEB_FORK=pi-hole PADD_FORK=pi-hole PIHOLE_UID=1000 PIHOLE_GID=1000 /bin/sh -c clone_repo() { FORK="$1"; REPO="$2"; BRANCH="$3"; DEST="$4"; CLONE_BRANCH="$BRANCH"; if [ "$BRANCH" = "master" ]; then CLONE_BRANCH=$(curl -s https://api.github.com/repos/${FORK}/${REPO}/releases/latest | jq -r .tag_name); fi; git clone --branch "$CLONE_BRANCH" --single-branch --depth 1 "https://github.com/${FORK}/${REPO}.git" "$DEST"; cd "$DEST"; if [ "$BRANCH" = "master" ]; then git checkout -b master; fi; }; clone_repo "${WEB_FORK}" "web" "${WEB_BRANCH}" "/var/www/html/admin"; clone_repo "${CORE_FORK}" "pi-hole" "${CORE_BRANCH}" "/etc/.pihole" # buildkit
RUN |11 TARGETPLATFORM=linux/arm/v7 WEB_BRANCH=master CORE_BRANCH=master FTL_BRANCH=master PIHOLE_DOCKER_TAG=2026.02.0 PADD_BRANCH=master CORE_FORK=pi-hole WEB_FORK=pi-hole PADD_FORK=pi-hole PIHOLE_UID=1000 PIHOLE_GID=1000 /bin/sh -c cd /etc/.pihole && install -Dm755 -d /opt/pihole && install -Dm755 -t /opt/pihole gravity.sh && install -Dm755 -t /opt/pihole ./advanced/Scripts/*.sh && install -Dm755 -t /opt/pihole ./advanced/Scripts/COL_TABLE && install -Dm755 -d /etc/pihole && install -Dm644 -t /etc/pihole ./advanced/Templates/logrotate && install -Dm755 -d /var/log/pihole && install -Dm755 -d /var/lib/logrotate && install -Dm755 -t /usr/local/bin pihole && install -Dm644 ./advanced/bash-completion/pihole.bash /etc/bash_completion.d/pihole && install -Dm644 ./advanced/bash-completion/pihole-ftl.bash /etc/bash_completion.d/pihole-FTL && install -T -m 0755 ./advanced/Templates/pihole-FTL-prestart.sh /opt/pihole/pihole-FTL-prestart.sh && install -T -m 0755 ./advanced/Templates/pihole-FTL-poststop.sh /opt/pihole/pihole-FTL-poststop.sh && addgroup -S pihole -g ${PIHOLE_GID} && adduser -S pihole -G pihole -u ${PIHOLE_UID} && echo "${PIHOLE_DOCKER_TAG}" > /pihole.docker.tag # buildkit
COPY --chmod=0755 bash_functions.sh /usr/bin/bash_functions.sh # buildkit
COPY --chmod=0755 start.sh /usr/bin/start.sh # buildkit
EXPOSE [53/tcp 53/udp]
EXPOSE [67/udp]
EXPOSE [80/tcp]
EXPOSE [123/udp]
EXPOSE [443/tcp]
RUN |11 TARGETPLATFORM=linux/arm/v7 WEB_BRANCH=master CORE_BRANCH=master FTL_BRANCH=master PIHOLE_DOCKER_TAG=2026.02.0 PADD_BRANCH=master CORE_FORK=pi-hole WEB_FORK=pi-hole PADD_FORK=pi-hole PIHOLE_UID=1000 PIHOLE_GID=1000 /bin/sh -c if [ "$TARGETPLATFORM" = "linux/amd64" ]; then FTLARCH=amd64; elif [ "$TARGETPLATFORM" = "linux/386" ]; then FTLARCH=386; elif [ "$TARGETPLATFORM" = "linux/arm/v6" ]; then FTLARCH=armv6; elif [ "$TARGETPLATFORM" = "linux/arm/v7" ]; then FTLARCH=armv7; elif [ "$TARGETPLATFORM" = "linux/arm64" ]; then FTLARCH=arm64; elif [ "$TARGETPLATFORM" = "linux/riscv64" ]; then FTLARCH=riscv64; else FTLARCH=amd64; fi && echo "Arch: ${TARGETPLATFORM}, FTLARCH: ${FTLARCH}" && if [ "${FTL_BRANCH}" = "master" ]; then URL="https://github.com/pi-hole/ftl/releases/latest/download"; else URL="https://ftl.pi-hole.net/${FTL_BRANCH}"; fi && curl -sSL "${URL}/pihole-FTL-${FTLARCH}" -o /usr/bin/pihole-FTL && chmod +x /usr/bin/pihole-FTL && readelf -h /usr/bin/pihole-FTL || (echo "Error with downloaded FTL binary" && exit 1) && /usr/bin/pihole-FTL -vv # buildkit
HEALTHCHECK &{["CMD-SHELL" "dig -p $(pihole-FTL --config dns.port) +short +norecurse +retry=0 @127.0.0.1 pi.hole || exit 1"] "0s" "0s" "0s" "0s" '\x00'}
ENTRYPOINT ["start.sh"]
LABEL maintainer=iGoX <code@igox.org>
LABEL description=piHole image integrating Unbound recursive DNS resolver
LABEL url=https://github.com/igox/pihole-unbound
LABEL upstream.pihole.image.digest.=sha256:ee348529cea9601df86ad94d62a39cad26117e1eac9e82d8876aa0ec7fe1ba27
RUN /bin/sh -c apk add --no-cache unbound ca-certificates # buildkit
COPY ./docker/unbound-config/unbound.conf /etc/unbound/ # buildkit
COPY ./docker/unbound-config/unbound.conf.d /etc/unbound/unbound.conf.d # buildkit
COPY ./docker/unbound-config/root.key /etc/unbound/root.key # buildkit
COPY ./docker/unbound-config/root.hints /etc/unbound/root.hints # buildkit
COPY ./docker/custom-entrypoint.sh /custom-entrypoint.sh # buildkit
RUN /bin/sh -c chmod +x /custom-entrypoint.sh # buildkit
ENTRYPOINT ["/custom-entrypoint.sh"]

Labels

Key Value
description piHole image integrating Unbound recursive DNS resolver
maintainer iGoX <code@igox.org>
org.opencontainers.image.created 2026-02-17T20:50:05.904Z
org.opencontainers.image.description The official Pi-hole Docker image from pi-hole.net
org.opencontainers.image.licenses NOASSERTION
org.opencontainers.image.revision b890f5db95e837f8b94f954a25f2ea3d2dc54765
org.opencontainers.image.source https://github.com/pi-hole/docker-pi-hole
org.opencontainers.image.title docker-pi-hole
org.opencontainers.image.url https://github.com/pi-hole/docker-pi-hole
org.opencontainers.image.version 2026.02.0
upstream.pihole.image.digest. sha256:ee348529cea9601df86ad94d62a39cad26117e1eac9e82d8876aa0ec7fe1ba27
url https://github.com/igox/pihole-unbound
Details
Container
2026-02-18 15:04:37 +01:00
9
OCI / Docker
Versions (5) View all
2026.02.0 2026-02-18
sha256-ee348529cea9 2026-02-18
latest 2026-02-18
sha256-91dc91ddd413 2026-01-30
2025.11.1 2026-01-30