Как сделать service discovery для клиентских приложений?
На данный момент нашел для себя более удобный и просто вариант:
Docker Swarm + Traefik.
В существующих docker-compose.yml всего-навсего пришлось изменить build на image, прописать команды для предварительного сбора образов и добавить метки для traefik.
Через Swarm могу развернуть масштабиремые контейнеры на нескольких машинах, на которые (в нужный микросервис) будет перенаправлять Traefik согласно поддомену (метка traefik.frontend.rule=Host:...)
Hashicorp Consul может вам подойдёт? Но я для этого используют облака, в частности AWS - там их Route53 очень удобно на себя берет решение вопроса