From be0a9dfcbd5ea62eca32f3cebb104ae39855a4f2 Mon Sep 17 00:00:00 2001 From: joshua Date: Fri, 29 Dec 2023 23:18:01 -0500 Subject: updated wiki on how to make server --- docs/server/ddns.md | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 docs/server/ddns.md (limited to 'docs/server/ddns.md') diff --git a/docs/server/ddns.md b/docs/server/ddns.md new file mode 100644 index 0000000..f81f5d7 --- /dev/null +++ b/docs/server/ddns.md @@ -0,0 +1,49 @@ +# DDNS Setup + +## Porkbun API + +Follow this [porkbun](https://kb.porkbun.com/article/190-getting-started-with-the-porkbun-api) guide on enabling the api for your domain. + +## ddns-updater + +[ddns-updater](https://github.com/qdm12/ddns-updater) is the program used to update Porkbun's A record of your domain. + +### Docker install + +Install the [docker](https://docs.docker.com/engine/install/debian/) package from official docker repositories. + +### Setup + +Create a directory with config.json inside, and make sure that its owner has a uid of 1000. + + mkdir data + touch data/config.json + # Owned by user ID of Docker container (1000) + chown -R 1000 data + # all access (for creating json database file data/updates.json) + chmod 700 data + # read access only + chmod 400 data/config.json + +Configuration for porkbun in config.json + + { + "settings": [ + { + "provider": "porkbun", + "domain": "domain.com", + "host": "@", + "api_key": "PORKBUN SECRET KEY", + "secret_api_key": "PORKBUN API KEY", + "ip_version": "ipv4" + } + ] + } + +Optional `"ttl"` paramter specifing A record TTL not included. + +### Usage + docker run -d -p 8000:8000/tcp -v "$(pwd)"/data:/updater/data qmcgaw/ddns-updater + +This will start a docker container that will start updating the DNS records. +Status updates can be seen in a web server by going to localhost:8000. -- cgit v1.2.3