From 2002eb22ceec8c53e04c6773d7358565b7a3b083 Mon Sep 17 00:00:00 2001 From: David Thurstenson Date: Thu, 17 Mar 2022 00:14:25 -0500 Subject: [PATCH] Initial commit --- Containerfile | 7 +++++++ README.md | 43 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 50 insertions(+) create mode 100644 Containerfile create mode 100644 README.md diff --git a/Containerfile b/Containerfile new file mode 100644 index 0000000..24ef608 --- /dev/null +++ b/Containerfile @@ -0,0 +1,7 @@ +FROM python:alpine + +RUN pip3 install --no-cache-dir linode-dynamic-dns + +ENV FREQUENCY=15 + +CMD linode-dynamic-dns -s "$(expr "$FREQUENCY" '*' 60)" & export HOST="*.$HOST"; linode-dynamic-dns -s "$(expr "$FREQUENCY" '*' 60)" diff --git a/README.md b/README.md new file mode 100644 index 0000000..0238391 --- /dev/null +++ b/README.md @@ -0,0 +1,43 @@ +Update Linode DNS records with your local IPv4 and IPv6 addresses. + +Forked from https://github.com/nvllsvm/linode-dynamic-dns + +# Changes from upstream + +- Runs `linode-dynamic-dns` twice. One using `$HOST` and a second using `*.$HOST` +- Move from `Dockerfile` to `Containerfile` +- Use `podman` commands in documentation +- Added Prerequisites section + +# Prerequisites + +- Linode API Token with read/write access to Domains +- `A` and `AAAA` records for `$HOST.$DOMAIN` and `*.$HOST.$DOMAIN` must already exist + - New records will not be created if they don't already exist, so you can easily disable the update functionality for one or more of these records by simply deleting them from Linode's Domains Manager (e.g. if you only want `A` records and no `AAAA` records) + +# Environment Variables + +**Required** +- ``DOMAIN`` - Domain name +- ``HOST`` - Host name (aka subdomain) +- ``TOKEN`` - Linode API token + +**Optional** +- ``FREQUENCY`` - Number of minutes to wait between updates (default 15). + +# Build image + +```` +$ podman build -t linode-dynamic-dns-plus-wildcard \ + https://git.thurstylark.com/containers/linode-dyndns-plus-wildcard.git +```` + +# Usage + +``` +$ podman run -dt \ + -e DOMAIN=yourdomain.com \ + -e HOST=www \ + -e TOKEN=apitoken \ + linode-dynamic-dns-plus-wildcard +```