/DjangoPowerDNS

Primary LanguageJavaScriptGNU Affero General Public License v3.0AGPL-3.0

DjangoPowerDNS

DjangoPowerDNS is a new PowerDNS webinterface written in Python and powered by Django.

Features

  • Add/Edit/Remove DNS records easily
  • Use the REST-API to change DNS records within your application
  • Add users to certain domains to allow them editing DNS records

Tech

DjangoPowerDNS uses awesome open source tools!


Screenshots

Domain list Records list
Records list filtered Records list editing
Records list add Records list delete
API preview

Installation

Install the following dependencies:

On Debian based Systems:

$ apt update
$ apt install python2.7
$ apt install python-pip
$ apt install git
$ apt install uwsgi
$ apt install python-mysqldb
$ apt install mysql-client
For mariadb:
$ apt install libmariadbclient-dev

On RHEL based Systems:

$ yum update -y
$ yum install -y python
$ yum install -y python-pip
$ yum install -y git
$ yum install -y uwsgi
$ yum install -y MySQL-python
$ yum install -y python-devel
$ yum install -y mariadb-devel
$ yum install libxslt-devel libxml2-devel

Clone the repository

$ git clone https://github.com/McLive/DjangoPowerDNS.git

Install and setup the virtualenv

$ pip install virtualenv
$ virtualenv venv
$ source venv/bin/activate

Install the python requirements

$ pip install -r requirements.txt
  • Rename DjangoPowerDNS/settings.py.dist to DjangoPowerDNS/settings.py
  • Change MySQL settings and secret key in DjangoPowerDNS/settings.py

Apply migrations

$ python manage.py migrate

Create a superuser

$ python manage.py createsuperuser

Todos

  • Complete README.md :)
  • Please send feature requests