• Joined on 2025-01-11

pihole/pihole (latest)

Published 2026-01-12 12:09:10 +08:00 by yuxing

Installation

docker pull gitea.os2.ethanynahte.top/yuxing/pihole/pihole:latest
sha256:082f66781142df57905708a730cd448dc9ee220ad371ddbe8f7fc5e30e50b755

Images

Digest OS / Arch Size
848cf5af61 linux/amd64 40 MiB
41f4e3ff1e linux/arm64 40 MiB

Image Layers ( linux/arm64)

ADD alpine-minirootfs-3.22.2-aarch64.tar.gz / # buildkit
CMD ["/bin/sh"]
ARG TARGETPLATFORM=linux/arm64
ARG WEB_BRANCH=master
ARG CORE_BRANCH=master
ARG FTL_BRANCH=master
ARG PIHOLE_DOCKER_TAG=2025.11.1
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/arm64 WEB_BRANCH=master CORE_BRANCH=master FTL_BRANCH=master PIHOLE_DOCKER_TAG=2025.11.1 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/arm64 WEB_BRANCH=master CORE_BRANCH=master FTL_BRANCH=master PIHOLE_DOCKER_TAG=2025.11.1 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/arm64 WEB_BRANCH=master CORE_BRANCH=master FTL_BRANCH=master PIHOLE_DOCKER_TAG=2025.11.1 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/arm64 WEB_BRANCH=master CORE_BRANCH=master FTL_BRANCH=master PIHOLE_DOCKER_TAG=2025.11.1 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/arm64 WEB_BRANCH=master CORE_BRANCH=master FTL_BRANCH=master PIHOLE_DOCKER_TAG=2025.11.1 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"]

Labels

Key Value
org.opencontainers.image.created 2025-11-27T18:41:58.170Z
org.opencontainers.image.description The official Pi-hole Docker image from pi-hole.net
org.opencontainers.image.licenses NOASSERTION
org.opencontainers.image.revision 8d7671af35eaf75069e1de88678690ac1abd5a9c
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 2025.11.1
Details
Container
2026-01-12 12:09:10 +08:00
2
OCI / Docker
Versions (3) View all
latest 2026-01-12
latest-arm64 2026-01-12
latest-amd64 2026-01-12