module
0.0.0-20240317111451-4b36a6df8eea
Repository: https://github.com/balutoiu/dynamicdns-go.git
Documentation: pkg.go.dev
# README
Dynamic DNS Go
Simple Dynamic DNS client written in Go.
How to use
-
Clone the repository.
-
Build the container image:
docker build -t balutoiu/dynamicdns-go .
-
Create the config file (sample here):
googledomains: username: user password: pass domain: test.example.com
-
Run the container:
docker run -d \ -v ./config.yaml:/config.yaml \ -e DNS_PROVIDER=googledomains \ balutoiu/dynamicdns-go
Prebuilt docker images are available here.
Environment variables
-
DNS_PROVIDER
- the DNS provider to be used (defaults togoogledomains
) -
SLEEP_INTERVAL
- the amount of time to wait between updates, example:1s
,1m
,1h
etc. (defaults to1h0m0s
)
Supported Dynamic DNS providers
Google domains
Example of config.yaml
file:
googledomains:
username: user
password: pass
domain: test.example.com
Start the container with:
docker run -d --restart=unless-stopped \
-v ./config.yaml:/config.yaml \
-e DNS_PROVIDER=googledomains \
ghcr.io/balutoiu/dynamicdns-go
Mail-in-a-box
Example of config.yaml
file:
mailinabox:
username: user
password: pass
domain: www.example.com
api_url: https://box.mailinabox.com
Start the container with:
docker run -d --restart=unless-stopped \
-v ./config.yaml:/config.yaml \
-e DNS_PROVIDER=mailinabox \
ghcr.io/balutoiu/dynamicdns-go
OVH domains
Example of config.yaml
file:
ovhdomains:
application_key: app-key
application_secret: app-secret
consumer_key: consumer-key
zone_name: example
sub_domain: www
Start the container with:
docker run -d --restart=unless-stopped \
-v ./config.yaml:/config.yaml \
-e DNS_PROVIDER=ovhdomains \
ghcr.io/balutoiu/dynamicdns-go