Skip to content

Commit

Permalink
Updated README for DockerHub usage
Browse files Browse the repository at this point in the history
  • Loading branch information
David Prandzioch committed Aug 18, 2017
1 parent 00a59f6 commit 19f083b
Showing 1 changed file with 30 additions and 1 deletion.
31 changes: 30 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,33 @@

This package allows you to set up a server for dynamic DNS using docker with a
few simple commands. You don't have to worry about nameserver setup, REST API
and all that stuff. Setup is as easy as that:
and all that stuff.

## Installation

You can either take the image from DockerHub or build it on your own.

### Using DockerHub

Just customize this to your needs and run:

```
docker run -it -d \
-p 8080:8080 \
-p 53:53 \
-p 53:53/udp \
-e SHARED_SECRET=changeme \
-e ZONE=example.org \
-e RECORD_TTL=3600 \
--name=dyndns \
davd/docker-ddns:latest
```

If you want to persist DNS configuration across container recreation, add `-v /somefolder:/var/cache/bind`. If you are experiencing any issues updating DNS configuration using the API
(`NOTAUTH` and `SERVFAIL`), make sure to add writing permissions for root (UID=0) to your persistent storage (e.g. `chmod -R a+w /somefolder`).

### Build from source / GitHub

```
git clone https://github.com/dprandzioch/docker-ddns
cd docker-ddns
Expand All @@ -15,6 +38,8 @@ make deploy

Make sure to change all environment variables in `envfile` to match your needs. Some more information can be found here: https://www.davd.eu/build-your-own-dynamic-dns-in-5-minutes/

## Exposed ports

Afterwards you have a running docker container that exposes three ports:

* 53/TCP -> DNS
Expand Down Expand Up @@ -67,3 +92,7 @@ http://ns.domain.tld:8080/update?...

If you provide `foo` as a domain when using the REST API, the resulting domain
will then be `foo.dyndns.domain.tld`.

## Common pitfalls

* If you're on a systemd-based distribution, the process `systemd-resolved` might occupy the DNS port 53. Therefore starting the container might fail. To fix this disable the DNSStubListener by adding `DNSStubListener=no` to `/etc/systemd/resolved.conf` and restart the service using `sudo systemctl restart systemd-resolved.service` but be aware of the implications... Read more here: https://www.freedesktop.org/software/systemd/man/systemd-resolved.service.html and https://github.com/dprandzioch/docker-ddns/issues/5

0 comments on commit 19f083b

Please sign in to comment.