Web UI frontend for PowerDNS API interface.
The project's aims are:
- simplicity: cover the basic operations that most people use
- easy of installation: There are no 3rd party dependencies - everything required is bundled in the release package.
Powr is made up of browser-based Javascript (written in AngularJS) and a proxy/webserver backend (written in Go) which a) serves the static content b) proxies the API requests to/from PowerDNS backend. The powr
server is available as a pre-compiled binary for Linux amd64 so no compilation is required.
Work in progress - Use at your own risk
View a live demo at http://porjo.github.io/powr
The demo runs entirely in your browser, and uses a mock backend.
-
Configure your PowerDNS server to enable the API. For the authoratative server, that means adding the following to your
pdns.conf
:experimental-json-interface=yes webserver=yes webserver-address=0.0.0.0 experimental-api-key=changeme
Consult the PowerDNS documentation for more information.
-
Grab a current build and unpack somewhere convenient.
-
Run the proxy/webserver like so:
./powr -d dist/ -pdnsAPIKey=changeme -pdnsHost=myserver -pdnsPort=8081
-
Point your browser to
http://localhost:8080
(or whatever IP/hostname your server has)
That's it!
- Clone this repo somewhere convenient:
git clone https://github.com/porjo/powr.git .
- Pull the necessary dependencies using npm and bower e.g.
npm install
+bower install
- Build the
powr
webserver binary withgo build
- Run
grunt-watch
to automatically populate the contents of/dist
anytime a change is made - Edit AngularJS project files under
/src