1
0
Fork 0
mirror of https://github.com/tunix/digitalocean-dyndns synced 2024-05-04 16:53:37 +00:00
Dynamic DNS using DigitalOcean's DNS Services
Go to file
Harald Ringvold 9b59388a58 Adding check for valid ip address
In some cases the return body from ifconfig.co is an HTML error page.
This change makes sure the response is a valid IP address.
2021-03-20 21:09:58 +01:00
Dockerfile Update Dockerfile 2020-12-14 12:57:34 +03:00
dyndns.sh Adding check for valid ip address 2021-03-20 21:09:58 +01:00
README.md add support for multiple subdomains 2020-01-30 13:38:37 +00:00

Dynamic DNS using DigitalOcean's DNS Services

A script that pushes the public IP address of the running machine to DigitalOcean's DNS API's. It requires an existing A record to update. The resulting container image is roughly around 7 MB (thanks to Alpine Linux).

Setup

Assuming you already have a DigitalOcean account and your domain associated with it. Just add an A record with desired name and IP address. That's it!

Usage

Pick one of the options below using the following settings:

  • DIGITALOCEAN_TOKEN: The token you generate in DigitalOcean's API settings.
  • DOMAIN: The domain your subdomain is registered at. (i.e. foo.com for home.foo.com)
  • NAME: Subdomain to use. (name in A record) (i.e. home for home.foo.com). Multiple subdomains must be separated by semicolons ;
  • SLEEP_INTERVAL: Polling time in seconds. (default: 300)
$ docker pull tunix/digitalocean-dyndns
$ docker run -d --name dyndns \
    -e DIGITALOCEAN_TOKEN="your_token_here" \
    -e DOMAIN="yourdomain.com" \
    -e NAME="subdomain" \
    -e SLEEP_INTERVAL=2 \
    tunix/digitalocean-dyndns

Manual

You can also create a cronjob using below command:

$ DIGITALOCEAN_TOKEN="your_token_here" DOMAIN="yourdomain.com" NAME="subdomain" SLEEP_INTERVAL=2 ./dyndns.sh