- amd64 & arm64 builds
- s6 supervisor
- cron
- common unix tools installed (tar, curl, rsync etc.)
- non-root image
- UID/GID freely changeable
the default UID/GID is set to 4444. if you want to change it, set the ENV variables PGID and PUID.
same for the time-zone, set via ENV variable TZ.
docker run \
-e TZ=Europe/Zurich \
-e PGID=1001 \
-e PUID=1001 \
-v ./auth.conf:/etc/powerdns/pdns.d/auth.conf \
olofvndrhr/pdns-recursor# compose.yml
recursor:
image: olofvndrhr/pdns-recursor:latest
volumes:
- ./recursor.conf/:/etc/powerdns/recursor.d/recursor.conf:ro
environment:
- TZ=Europe/Zurich
- PUID=1001
- PGID=1001this image also has cron installed. custom crontabs should be placed in /etc/cron.d/.
# compose.yml
recursor:
image: olofvndrhr/pdns-recursor:latest
volumes:
- ./recursor.conf/:/etc/powerdns/recursor.d/recursor.conf:ro
- ./custom-crontab:/etc/cron.d/custom-crontab:romore examples in config-examples
image name: olofvndrhr/pdns-recursor
to use custom configs either override the default /etc/powerdns/pdns.conf or mount the
folder /etc/powerdns/pdns.d/ to supply your own config files.
docker run \
-v ./auth.conf:/etc/powerdns/pdns.d/auth.conf \
olofvndrhr/pdns-recursorlocal-address=0.0.0.0,::
include-dir=/etc/powerdns/pdns.d
launch=image name: olofvndrhr/pdns-auth
to use custom configs either override the default /etc/powerdns/recursor.conf or mount the
folder /etc/powerdns/recursor.d/ to supply your own config files.
docker run \
-v ./recursor.conf/:/etc/powerdns/recursor.d/recursor.conf \
olofvndrhr/pdns-authincoming:
listen:
- 0.0.0.0
- "::"
recursor:
include_dir: /etc/powerdns/recursor.dimage name: olofvndrhr/pdns-lightningstream
to use your config, mount it at /lightningstream.yml.
docker run \
-v ./lightningstream.yml:/lightningstream.yml \
olofvndrhr/pdns-lightningstream| env variable | usage | required |
|---|---|---|
| AWS_ACCESS_KEY | S3 access key for LMDB storage | yes |
| AWS_SECRET_KEY | S3 secret key for LMDB storage | yes |
| INSTANCE_NAME | unique name for the instance | yes |
no default config in this image
image name: olofvndrhr/pdns-dnsdist
to use custom configs mount your own config file to /etc/dnsdist/dnsdist.yml
docker run \
-v ./dnsdist.yml:/etc/dnsdist/dnsdist.yml \
olofvndrhr/pdns-dnsdist| env variable | usage | required |
|---|---|---|
| CERT_DOMAIN | domain of the certificate for DNS over TLS/HTTPS/QUIC | no |
acl:
- 0.0.0.0/0
- ::/0
binds:
- listen_address: "0.0.0.0:53"
additional_addresses: ["[::]:53"]
protocol: "Do53"
backends:
- address: "127.0.0.1:53"
protocol: "Do53"
name: local-recursor
tcp_only: true
health_checks:
qname: "a.root-servers.net."
qtype: "AAAA"
qclass: "CHAOS"
must_resolve: true
load_balancing_policies:
default_policy: "firstAvailable"