Files
docker-pdns-auth-pgsql/Dockerfile
Simon Waldburger 80864f1c88 Init Commit
2025-10-09 19:21:20 +02:00

46 lines
1.6 KiB
Docker

FROM debian:trixie-slim
LABEL maintainer="Simon M. Waldburger <simon.waldburger@i-xperts.com>"
LABEL last_changed="2025-10-09"
RUN apt-get update && \
apt-get -y upgrade && \
apt-get install -y curl ca-certificates locales && \
localedef -i en_US -c -f UTF-8 -A /usr/share/locale/locale.alias en_US.UTF-8 && \
apt-get clean && \
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
ADD https://www.postgresql.org/media/keys/ACCC4CF8.asc /etc/apt/keyrings/postgres-pub.asc
ADD build/postgres.source /etc/apt/sources.list.d/postgres.source
ADD https://repo.powerdns.com/FD380FBB-pub.asc /etc/apt/keyrings/powerdns-pub.asc
ADD build/pdns.sources /etc/apt/sources.list.d/pdns.sources
ADD build/pdns.preferences /etc/apt/preferences.d/pdns
RUN chmod 644 /etc/apt/keyrings/powerdns-pub.asc && \
apt-get update && \
echo "path-include /usr/share/doc/*/*.sql" >> /etc/dpkg/dpkg.cfg.d/docker && \
DEBIAN_FRONTEND=noninteractive apt-get install -q -y pdns-server pdns-backend-pgsql postgresql-client-18 && \
rm /etc/powerdns/pdns.d/*.conf && rm /etc/powerdns/*.conf && \
apt-get clean && \
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
USER root
RUN mkdir -p /app
COPY build/entrypoint.sh /app/entrypoint.sh
COPY build/pdns.conf.tpl /app/pdns.conf.tpl
RUN chmod 755 /app/entrypoint.sh /app/wait-for-it.sh
RUN chown -R pdns: /app
ENV VERSION=4.9 \
PDNS_guardian=yes \
PDNS_setuid=pdns \
PDNS_setgid=pdns \
PDNS_launch=gpgsql
EXPOSE 8081 53 53/udp
HEALTHCHECK --interval=10s --timeout=10s --retries=3 --start-period=2s CMD ["pdns_control", "ping"]
ENTRYPOINT [ "/docker-entrypoint.sh" ]
CMD [ "/usr/sbin/pdns_server" ]