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.
It does this every 4:30 to 5:00 minutes to make sure the DNS record is always up-to-date.
This project uses:
- IPInfo.io API for getting the public IP address
- transip/tipctl TransIP Control the official TransIP RestAPI CLI for setting the IP address
- php:cli-alpine Official php:cli-alpine docker image
- Put your private key in a file called
private.keyand store it next to thedocker-compose.ymlfile. - Add the
tipddnsservice to yourdocker-compose.ymlfile and change theLOGINNAMEandDOMAINSenvironment variables. - Run
docker compose up -dto start the container.
services:
tipddns:
container_name: tipddns
image: bvandevliet/tipddns:latest
restart: unless-stopped
volumes:
- ./private.key:/app/private.key:ro
environment:
TZ: Europe/Amsterdam
LOGINNAME: myusername
DOMAINS: mydomain.com,myotherdomain.com
ALWAYSLOG: true| Variable | Default value | Description |
|---|---|---|
| LOGINNAME* | myusername | Your TransIP username. |
| DOMAINS* | mydomain.com,myotherdomain.com | The domainnames registered at TransIP from which you want to update the A records. |
| ALWAYSLOG | true | When set to true, log wil show IP has been checked but DNS did not need to be updated. |