Sign inSign up

301167/ddns-transip

By 301167

•Updated 3 days ago

Updates a TransIP DNS record with your current public IP address

Image
0

301

301167/ddns-transip repository overview

⁠TransIP DDNS Docker

Create a docker container for updating a TransIP DNS record with the current public IP address. It monitors the current public IP address and when it changes it updates the DNS record hosted at TransIP.

⁠Using

This project uses:

⁠Usage / Commands

⁠Build or pull image

docker build -t <dockerhub-user>/ddns-transip:latest .
or
docker pull <dockerhub-user>/ddns-transip:latest

⁠Run container

Example loading private key from file 'private.key':

docker run -it \
  -e LOGINNAME=myusername \
  -e PRIVATEKEY="$(cat private.key)" \
  -e DOMAIN=mydomain.com \
  -e RECORD=@ \
  --restart unless-stopped --name ddns-transip <dockerhub-user>/ddns-transip:latest

Replace -it for -itd to run the container in the background (or detach from the running container by pressing Ctrl+P followed by Ctrl+Q)

⁠Show logs

docker logs ddns-transip

⁠Environment variables

VariableDefault valueDescription
LOGINNAMEmyusernameYour TransIP username
PRIVATEKEYmyprivatekeyThe private key from the key-pair generated at the TransIP API settings. See run example above when the key is stored in a file named 'private.key'
DOMAINmydomain.comThe domainname registered at TransIP from which you want to update a record
RECORD@The DNS record name for which to change the IP address (@, www, etc.). For wildcard (*) use 'wildcard'.
TTL300The Time-To-Live of the DNS record, defaults to 5 minutes
TYPEAThe type of the record to update
INTERVAL300The interval in seconds before checking again if the public IP has changed
ALWAYSLOGfalseWhen set to true, log wil show IP has been checked but DNS did not need to be updated

BOLD: These variables must be changed, the other variables could be left at their defaults.

⁠Publishing (GitHub Actions)

The workflow in .github/workflows/docker-publish.yml builds a multi-arch image (amd64, arm64, arm/v7) and pushes it to Docker Hub as <DOCKERHUB_USERNAME>/ddns-transip.

Triggers:

  • push to main → tags latest and sha-<short>
  • git tag vX.Y.Z → tags X.Y.Z and X.Y
  • weekly schedule → rebuild for base-image patches and new tipctl releases
  • pull requests → build only, no push

Required repository secrets (Settings → Secrets and variables → Actions):

SecretValue
DOCKERHUB_USERNAMEYour Docker Hub username
DOCKERHUB_TOKENDocker Hub personal access token (Read, Write, Delete scope — Delete is needed to update the repository description)

⁠Credits

Originally based on JeftaDirksen/TransIP-DDNS-Docker⁠.

Tag summary

Content type

Image

Digest

sha256:f6cfe0382…

Size

181.4 MB

Last updated

3 days ago

docker pull 301167/ddns-transip