Updated project README to include a refreshed feature list.

Also updated project README Docker deployment instructions to reference the latest stable release version on Docker Hub.

Updated project license to include updated management organization references.
This commit is contained in:
Matt Scott 2023-02-26 03:47:28 -05:00
parent df94baa81e
commit 10f5bb7dc1
2 changed files with 41 additions and 22 deletions

View File

@ -1,6 +1,7 @@
The MIT License (MIT) The MIT License (MIT)
Copyright (c) 2016 Khanh Ngo - ngokhanhit[at]gmail.com Copyright (c) 2016 Khanh Ngo - ngokhanhit[at]gmail.com
Copyright (c) 2022 Azorian Solutions - legal[at]azorian.solutions
Permission is hereby granted, free of charge, to any person obtaining a copy Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal of this software and associated documentation files (the "Software"), to deal

View File

@ -1,49 +1,65 @@
# PowerDNS-Admin # PowerDNS-Admin
A PowerDNS web interface with advanced features. 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) [![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) [![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: #### Features:
- Multiple domain management
- Domain template - Provides forward and reverse zone management
- User management - Provides zone templating features
- User access management based on domain - Provides user management with role based access control
- User activity logging - Provides zone specific access control
- Support Local DB / SAML / LDAP / Active Directory user authentication - Provides activity logging
- Support Google / Github / Azure / OpenID OAuth - Authentication:
- Support Two-factor authentication (TOTP) - Local User Support
- Dashboard and pdns service statistics - 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 - DynDNS 2 protocol support
- Edit IPv6 PTRs using IPv6 addresses directly (no more editing of literal addresses!) - Easy IPv6 PTR record editing
- Limited API for manipulating zones and records - Provides an API for zone and record management among other features
- Full IDN/Punycode support - Provides full IDN/Punycode support
## Running PowerDNS-Admin ## 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](https://github.com/PowerDNS-Admin/PowerDNS-Admin/wiki#installation-guides) for ways to do that. 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/wiki#installation-guides) for ways to do that.
### Docker ### Docker
Here are two options to run PowerDNS-Admin using 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. 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 #### Option 1: From Docker Hub
The easiest is to just run the latest Docker image from Docker Hub:
To run the application using the latest stable release on Docker Hub, run the following command:
``` ```
$ docker run -d \ $ docker run -d \
-e SECRET_KEY='a-very-secret-key' \ -e SECRET_KEY='a-very-secret-key' \
-v pda-data:/data \ -v pda-data:/data \
-p 9191:80 \ -p 9191:80 \
powerdnsadmin/pda-legacy:latest powerdnsadmin/pda-legacy:v0.3.0
``` ```
This creates a volume called `pda-data` to persist the SQLite database with the configuration.
This creates a volume named `pda-data` to persist the default SQLite database with app configuration.
#### Option 2: Using docker-compose #### Option 2: Using docker-compose
1. Update the configuration 1. Update the configuration
Edit the `docker-compose.yml` file to update the database connection string in `SQLALCHEMY_DATABASE_URI`. 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). Other environment variables are mentioned in
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. the [legal_envvars](https://github.com/PowerDNS-Admin/PowerDNS-Admin/blob/master/configs/docker_config.py#L5-L46).
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) 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 2. Start docker container
``` ```
@ -53,8 +69,10 @@ This creates a volume called `pda-data` to persist the SQLite database with the
You can then access PowerDNS-Admin by pointing your browser to http://localhost:9191. You can then access PowerDNS-Admin by pointing your browser to http://localhost:9191.
## Screenshots ## Screenshots
![dashboard](https://user-images.githubusercontent.com/6447444/44068603-0d2d81f6-9fa5-11e8-83af-14e2ad79e370.png) ![dashboard](https://user-images.githubusercontent.com/6447444/44068603-0d2d81f6-9fa5-11e8-83af-14e2ad79e370.png)
## LICENSE ## LICENSE
MIT. See [LICENSE](https://github.com/PowerDNS-Admin/PowerDNS-Admin/blob/master/LICENSE)
This project is released under the MIT license. For additional
information, [see here](https://github.com/PowerDNS-Admin/PowerDNS-Admin/blob/master/LICENSE)