diff options
author | joshua <joshua@joshuayun.com> | 2023-12-29 23:18:01 -0500 |
---|---|---|
committer | joshua <joshua@joshuayun.com> | 2023-12-29 23:18:01 -0500 |
commit | be0a9dfcbd5ea62eca32f3cebb104ae39855a4f2 (patch) | |
tree | 05e8c68e2adb022e7b6d3b0ecf3799aaf1f795ec /docs/server/ddns.md | |
parent | 801b59c05ac3c12e74a5f77c0d5d6f898ef55912 (diff) | |
download | wiki-be0a9dfcbd5ea62eca32f3cebb104ae39855a4f2.tar.gz |
updated wiki on how to make server
Diffstat (limited to 'docs/server/ddns.md')
-rw-r--r-- | docs/server/ddns.md | 49 |
1 files changed, 49 insertions, 0 deletions
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. |