Init Commit

This commit is contained in:
Simon Waldburger
2025-10-09 19:21:20 +02:00
commit 80864f1c88
6 changed files with 189 additions and 0 deletions

46
Dockerfile Normal file
View File

@@ -0,0 +1,46 @@
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" ]