A simple web client for BIND.
Notes:
- This only supports A, AAAA, CNAME, NS, and TXT records
- It's best to start with a fresh zone file since the parser is not very sophisticated.
- A firebase account is needed for storing user credentials.
- Ensure at least node 10 and npm are installed
- Ensure named-checkzone and rndc are installed and can be run by the user who will be running the webserver. (The user usually has to belong to this bind group)
named-checkzone $ORIGIN $ZONE_FILE
rndc reload
- Ensure that the user who will be running the webserver can read and write the zone file
- Add .env file to the root directory of this repository with the following properties
ZONE_FILE=<zone-file-location>
ORIGIN=<origin>
SECRET=<session-secret>
FIREBASE_API_KEY=<api-key>
FIREBASE_PROJECT_ID=<project-id>
- Run
npm install && npm run build
- Run
npm run pm2-install
and navigate to http://localhost:3001
This project can be run in docker if BIND is not installed locally.
- Ensure docker is installed
- Add an .env file to the root directory of the repository with the same properties specified in the server section
- Run
docker-compose up