A tool to register an ingress host with its ingress controller in Consul
IngressController
s are used to route incoming traffic based onrules
defined asIngress
resources.- When
Ingress
is used to setup Name based virtual hosts, there is a need to add thehost
to a DNS server. ingress-dns
helps in registering thehost
with theService
IpAddress of theIngressController
toConsul
- Kubernetes with Helm
- Consul
- Nginx-Ingress-Controller
We will use helm to install Consul and ingress controller
# To install consul
$ helm install --name dns stable/consul -f kubernetes/consul-values.yaml
# To install Ingress controller
$ helm install --name gateway stable/nginx-ingress
# To install dependencies using glide
$ glide install
# To build application
$ go build
# Create config.yml file
$ cp -v config.yml.sample config.yml
# Make necessary changes to config.yml before starting
# To start
$ ./ingress-dns start
# Or you can use docker
$ docker build . -t ingress-dns
$ docker run --rm -d ingress-dns