Docker build of a Cloudflare DDNS client using their example code
Go to file
IamTheFij d6c46b5c10
All checks were successful
continuous-integration/drone/push Build is passing
README.md update to describe new contents
Explains that this repo does not actually have any code and it merely
is an image wrapping an existing example script
2020-01-21 18:10:16 -08:00
.dockerignore Working commit 2019-03-05 11:16:45 -08:00
.drone.yml update drone pipelines for new Dockerfile 2020-01-21 18:00:35 -08:00
.gitignore Add multiarch building from Drone 2019-03-10 18:09:12 -07:00
Dockerfile Stop copying extra qemu files 2020-01-21 17:52:45 -08:00
LICENSE Initial commit 2019-03-05 19:15:08 +00:00
Makefile WIP: Get started squashing things down 2020-01-21 17:46:39 -08:00
manifest.tmpl Add multiarch building from Drone 2019-03-10 18:09:12 -07:00
README.md README.md update to describe new contents 2020-01-21 18:10:16 -08:00

Docker Cloudfare DDNS

Simple Docker image that wraps an example script to dynamically update a Cloudflare DNS record.

Usage

There are two things to configure. First, the domain that you wish to update needs to be provided as a command line argument. This can be done by adding it to the end of your run command (example in the Makefile) or by adding it as a command to your compose file. Eg:

ddns:
  image: IamTheFij/cloudflare-ddns
  command: ["example.com"]

Your Cloudflare credentials can be passed in any way that python-cloudflare allows. Generally, either via envioronment variables:

CF_API_EMAIL=admin@example.com  # Do not set if using an API Token
CF_API_KEY=00000000000000000000
CF_API_CERTKEY='v1.0-...'

Or by providing a file mounted to the working directory in the image, /src/.cloudflare.cfg that contains something like:

[CloudFlare]
emal = admin@example.com  # Do not set if using an API Token
token = 00000000000000000000
certtoken = v1.0-...

Then run. To execute from this directory, you can use the convenient Make target.

make run