mirror of
https://github.com/cwinfo/powerdns-admin.git
synced 2024-11-08 14:40:27 +00:00
79 lines
3.1 KiB
Markdown
79 lines
3.1 KiB
Markdown
# PowerDNS-Admin
|
|
|
|
A PowerDNS web interface with advanced features.
|
|
|
|
[![CodeQL](https://github.com/PowerDNS-Admin/PowerDNS-Admin/actions/workflows/codeql-analysis.yml/badge.svg?branch=master)](https://github.com/PowerDNS-Admin/PowerDNS-Admin/actions/workflows/codeql-analysis.yml)
|
|
[![Docker Image](https://github.com/PowerDNS-Admin/PowerDNS-Admin/actions/workflows/build-and-publish.yml/badge.svg?branch=master)](https://github.com/PowerDNS-Admin/PowerDNS-Admin/actions/workflows/build-and-publish.yml)
|
|
|
|
#### Features:
|
|
|
|
- Provides forward and reverse zone management
|
|
- Provides zone templating features
|
|
- Provides user management with role based access control
|
|
- Provides zone specific access control
|
|
- Provides activity logging
|
|
- Authentication:
|
|
- Local User Support
|
|
- SAML Support
|
|
- LDAP Support: OpenLDAP / Active Directory
|
|
- OAuth Support: Google / GitHub / Azure / OpenID
|
|
- Two-factor authentication support (TOTP)
|
|
- PDNS Service Configuration & Statistics Monitoring
|
|
- DynDNS 2 protocol support
|
|
- Easy IPv6 PTR record editing
|
|
- Provides an API for zone and record management among other features
|
|
- Provides full IDN/Punycode support
|
|
|
|
## Running PowerDNS-Admin
|
|
|
|
There are several ways to run PowerDNS-Admin. The quickest way is to use Docker.
|
|
If you are looking to install and run PowerDNS-Admin directly onto your system, check out
|
|
the [wiki](https://github.com/PowerDNS-Admin/PowerDNS-Admin/blob/master/docs/wiki/) for ways to do that.
|
|
|
|
### Docker
|
|
|
|
Here 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
|
|
|
|
To run the application using the latest stable release on Docker Hub, run the following command:
|
|
|
|
```
|
|
$ docker run -d \
|
|
-e SECRET_KEY='a-very-secret-key' \
|
|
-v pda-data:/data \
|
|
-p 9191:80 \
|
|
powerdnsadmin/pda-legacy:v0.3.0
|
|
```
|
|
|
|
This creates a volume named `pda-data` to persist the default SQLite database with app 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](https://github.com/PowerDNS-Admin/PowerDNS-Admin/blob/master/configs/docker_config.py#L5-L46).
|
|
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](https://user-images.githubusercontent.com/6447444/44068603-0d2d81f6-9fa5-11e8-83af-14e2ad79e370.png)
|
|
|
|
## LICENSE
|
|
|
|
This project is released under the MIT license. For additional
|
|
information, [see here](https://github.com/PowerDNS-Admin/PowerDNS-Admin/blob/master/LICENSE)
|