The gateway service exposes all of the micro-services as a unified API, exposed over a single port. It also works with Netflix ribbon based client side load balancer and Hashicorp Consul to consolidate across hosts and scale horizontally. The current implementation is running Zuul, a Java based gateway proxy.
Start after Consul Registry is online and configuration data posted to it's Key/Value store.
The gateway service is designed to resolve the "service-registry" host name and connect to a Consul registry service at that IP. The host name can be provided by the "extra-hosts" option for the service in the docker-compose file.
Once connected, the bootstrap process will load any application configuration, to include Zuul routes, from the Consul Key/Value store. For this reason, Consul should be started first, and the configuration for the gateway added to the Key/Value store prior to starting the gateway service.
This container is designed to be started with a docker-compose file in conjunction with other services.
This docker microservice is available under the Apache 2.0 License.
Source code for this microservice is available in repositories at https://github.com/RackHD.
The microservice makes use of dependent Jar libraries that may be covered by other licenses. In order to comply with the requirements of applicable licenses, the source for dependent libraries used by this microservice is available for download at: https://bintray.com/rackhd/binary/download_file?file_path=smi-service-gateway-dependency-sources-devel.zip
Additionally the binary and source jars for all dependent libraries are available for download on Maven Central.
Slack Channel: codecommunity.slack.com