Skip to content

Latest commit

 

History

History
76 lines (55 loc) · 2.25 KB

README.md

File metadata and controls

76 lines (55 loc) · 2.25 KB

PowerDNS Docker Container

Image Size Docker Stars Docker Pulls Docker Automated buil

  • Small Alpine based Image
  • MySQL (default), Postgres, SQLight and Bind backend included
  • Automatic MySQL database initialization
  • Latest PowerDNS version (if not pls file an issue)
  • Guardian process enabled
  • Graceful shutdown using pdns_control

Supported tags

  • Exact: i.e. 4.0.2-r3: PowerDNS Version 4.0.2, image build 3
  • 4.0: PowerDNS Version 4.0.x, latest image build
  • 4: PowerDNS Version 4.x.x, latest image build

Usage

# Start a MySQL Container
$ docker run -d \
  --name pdns-mysql \
  -e MYSQL_ROOT_PASSWORD=supersecret \
  -v $PWD/mysql-data:/var/lib/mysql \
  mariadb:10.1

$ docker run --name pdns \
  --link pdns-mysql:mysql \
  -p 53:53 \
  -p 53:53/udp \
  -e MYSQL_USER=root \
  -e MYSQL_PASS=supersecret \
  psitrax/powerdns \
    --cache-ttl=120 \
    --allow-axfr-ips=127.0.0.1 123.1.2.3

Configuration

Environment Configuration:

  • MySQL connection settings
    • MYSQL_HOST=mysql
    • MYSQL_USER=root
    • MYSQL_PASS=root
    • MYSQL_DB=pdns
  • Want to disable mysql initialization? Use MYSQL_AUTOCONF=false
  • Want to use own config files? Mount a Volume to /etc/pdns/conf.d or simply overwrite /etc/pdns/pdns.conf
  • Want to allow zone transfers? Set ALLOW_AXFR_IPS to a IP/Subnet and ALLOW_AXFR=true
  • API Settings
    • API=true/false
    • API_KEY=somethinghere

PowerDNS Configuration:

Append the PowerDNS setting to the command as shown in the example above.
See docker run --rm psitrax/powerdns --help

License

GNU General Public License v2.0 applyies to PowerDNS and all files in this repository.

Maintainer

Credits