A PowerDNS web interface with advanced features
Go to file
Felix Kaechele 06266846ec Use sqlite by default in docker
This allows for easy setup with no extra configuration.
Also update docs to reflect the new and easy way to run PowerDNS-Admin.

Signed-off-by: Felix Kaechele <felix@kaechele.ca>
2020-04-20 18:32:36 -04:00
configs Use sqlite by default in docker 2020-04-20 18:32:36 -04:00
docker Use sqlite by default in docker 2020-04-20 18:32:36 -04:00
docker-test Fix #592 - Adjustment in Dockerfile to upgrade pip package 2019-12-07 14:45:41 +07:00
docs Resolve the conflicts and add adjustment to #591 2019-12-06 14:27:35 +07:00
migrations Fix migration script and user model 2019-12-22 08:40:05 +07:00
powerdnsadmin set SAML wantAssertionsEncrypted from config 2020-04-03 13:44:03 +00:00
tests Update mock test 2019-12-18 23:48:46 +07:00
.dockerignore Update docker stuff and bug fixes 2019-12-04 11:50:46 +07:00
.gitattributes Add .gitattributes 2018-06-11 17:12:52 +07:00
.gitignore Show actual result on applyChanges(). Remove generated assets files 2019-12-11 13:45:27 +07:00
.lgtm.yml Add .lgtm.yml 2018-08-31 21:58:11 +07:00
.travis.yml Add Api to PowerDNS-Admin 2019-03-01 23:50:04 +01:00
.yarnrc Update docker stuff and bug fixes 2019-12-04 11:50:46 +07:00
docker-compose-test.yml Fix the tests 2019-12-06 10:59:19 +07:00
docker-compose.yml Fix #592 - Adjustment in Dockerfile to upgrade pip package 2019-12-07 14:45:41 +07:00
LICENSE Change license information 2018-04-02 14:01:35 +07:00
package.json Add session timeout warning 2019-12-17 23:46:34 +07:00
README.md Use sqlite by default in docker 2020-04-20 18:32:36 -04:00
requirements.txt Update gunicorn 19.7.1 -> 20.0.4 2020-03-13 00:22:32 +01:00
run.py Refactoring the code 2019-12-02 10:32:03 +07:00
update_zones.py LGTM fixes. Remove unused import and variables 2019-12-07 20:20:40 +07:00
yarn.lock Add session timeout warning 2019-12-17 23:46:34 +07:00

PowerDNS-Admin

A PowerDNS web interface with advanced features.

Build Status 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

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 \
    -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.

  2. Start docker container

    $ docker-compose up
    

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

Screenshots

dashboard