K8s controller that annotates an Ingress object with the current external IP address
1.9K
This is an "flant/shell-operator" based container image for Kubernetes, running a small DynDNS controller that annotates Ingress objects with the current external IP address. Useful in conjurance with "kubernetes-sigs/external-dns".
Please see manifests/03-Deployment.yaml for all available configuration options.
Currently the IPv4 address found is prioritized.
Create an Ingress object with the following annotation (default, when using 'external-dns'), replace the hostname:
kubectl annotate --overwrite ingress -n kube-system traefik "external-dns.alpha.kubernetes.io/hostname=this-is-fine.io"
As soon as the controller updates the external IP address (default, every 15 minutes), each Ingress object matching the annotation above gets updated (default, every 3 minutes) with the following annotation:
kubectl get ingress -n kube-system traefik -o json | \
jq -r '.metadata.annotations."external-dns.alpha.kubernetes.io/target"'
Aside of the scheduled update of all Ingress resources, the controller watches also for creations and modifications.
Content type
Image
Digest
sha256:9c59c718d…
Size
35.5 MB
Last updated
almost 3 years ago
docker pull ff0x/dyndns