Skip to content

PowerDNS-Admin/PowerDNS-Admin

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
Oct 14, 2022
Aug 31, 2018

PowerDNS-Admin

A PowerDNS web interface with advanced features.

Language grade: Python Language grade: JavaScript

Features:

  • Multiple domain management
  • Domain template
  • User management
  • User access management based on domain
  • User activity logging
  • Support Local DB / SAML / LDAP / Active Directory user authentication
  • Support Google / Github / Azure / OpenID OAuth
  • Support Two-factor authentication (TOTP)
  • Dashboard and pdns service statistics
  • DynDNS 2 protocol support
  • Edit IPv6 PTRs using IPv6 addresses directly (no more editing of literal addresses!)
  • Limited API for manipulating zones and records
  • Full IDN/Punycode support

Running PowerDNS-Admin

There are several ways to run PowerDNS-Admin. The easiest way is to use Docker. If you are looking to install and run PowerDNS-Admin directly onto your system check out the Wiki for ways to do that.

Docker

This are two options to run PowerDNS-Admin using Docker. To get started as quickly as possible try option 1. If you want to make modifications to the configuration option 2 may be cleaner.

Option 1: From Docker Hub

The easiest is to just run the latest Docker image from Docker Hub:

$ docker run -d \
    -e SECRET_KEY='a-very-secret-key' \
    -v pda-data:/data \
    -p 9191:80 \
    ngoduykhanh/powerdns-admin:latest

This creates a volume called pda-data to persist the SQLite database with the configuration.

Option 2: Using docker-compose

  1. Update the configuration
    Edit the docker-compose.yml file to update the database connection string in SQLALCHEMY_DATABASE_URI. Other environment variables are mentioned in the legal_envvars. To use the Docker secrets feature it is possible to append _FILE to the environment variables and point to a file with the values stored in it.
    Make sure to set the environment variable SECRET_KEY to a long random string (https://flask.palletsprojects.com/en/1.1.x/config/#SECRET_KEY)

  2. Start docker container

    $ docker-compose up
    

You can then access PowerDNS-Admin by pointing your browser to http://localhost:9191.

Screenshots

dashboard

LICENSE

MIT. See LICENSE