Skip to content

docker container that contains powerdns for authorative use

Notifications You must be signed in to change notification settings

CrystalNET-org/powerdns-auth

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PowerDNS Docker Image

Welcome to the PowerDNS Docker image, a containerized instance of the authoritative DNS server. This image is designed to be run rootless and with a readonly rootfs. Generally security has ben taken seriously and no writes should occur outside of /tmp/.

Getting Started

Prerequisites

  • Docker installed on your system.

Quick Start

Pull the PowerDNS Docker image:

docker pull CrystalNET-org/powerdns-auth:<tag>

Run the PowerDNS container with default settings:

docker run -d -p 53:10353/tcp -p 53:10353/udp CrystalNET-org/powerdns-auth:<tag>

Configuration

The PowerDNS container can be customized using environment variables

Mapping Parameters to Environment Variables

The environment variables are derived from the PowerDNS settings by converting them to uppercase and replacing underscores with hyphens. For example, a PowerDNS setting like launch becomes the environment variable PDNS_LAUNCH.

Example

To configure PowerDNS Server to launch the API with specific settings, you can set the corresponding environment variables:

export PDNS_LAUNCH=bind,gmysql
export PDNS_API_KEY=your-api-key
export PDNS_API_PORT=8081

These environment variables will be translated into the following PowerDNS command line parameters on startup:

--launch=bind,gmysql
--api-key=your-api-key
--api-port=8081

Example Usage

Run PowerDNS with a specific MySQL configuration:

docker run -d -p 53:10353/tcp -p 53:10353/udp \
  -e PDNS_LAUNCH=gmysql \
  -e PDNS_GMYSQL_HOST=my-mysql-server \
  -e PDNS_GMYSQL_PORT=3307 \
  -e PDNS_GMYSQL_USER=myuser \
  -e PDNS_GMYSQL_PASSWORD=mypassword \
  -e PDNS_GMYSQL_DBNAME=mydatabase \
  CrystalNET-org/powerdns-auth:<tag>

Adjust the MySQL environment variables based on your database setup.

Exposed Ports

The PowerDNS container exposes the following ports by default:

  • TCP: 10353
  • UDP: 10353

Additional Information

For a comprehensive list of available PowerDNS settings and their descriptions, please refer to the PowerDNS Authoritative Server Settings documentation.

For additional configurations and details, refer to the PowerDNS documentation. Customize the Dockerfile and configurations to suit your specific requirements.

Feel free to explore and contribute to this PowerDNS Docker image on GitHub.

About

docker container that contains powerdns for authorative use

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published