Files
spring-cloud-consul/docs/src/main/asciidoc
Ryan Baxter 7971265acf Remove optional @EnableDiscoveryClient (#355)
* Remove optional @EnableDiscoveryClient.  Fixes #353.
2017-09-25 13:17:40 -04:00
..
2016-08-22 13:31:46 +02:00
2015-07-29 15:34:08 -06:00

image::https://circleci.com/gh/spring-cloud/spring-cloud-consul/tree/master.svg?style=svg["CircleCI", link="https://circleci.com/gh/spring-cloud/spring-cloud-consul/tree/master"]
image::https://codecov.io/gh/spring-cloud/spring-cloud-consul/branch/master/graph/badge.svg["Codecov", link="https://codecov.io/gh/spring-cloud/spring-cloud-consul/branch/master"]

include::intro.adoc[]

== Consul overview

Features of Consul

* Distributed configuration
* Service registration and discovery
* Distributed events
* Distributed locking and sessions
* Supports multiple data centers
* Built in, user-friendly user interface

See the https://consul.io/intro/index.html[intro] for more information.

== Spring Cloud Consul Features

* Spring Cloud `DiscoveryClient` implementation
** supports Ribbon and Zuul
* Consul based `PropertySource` loaded during the 'bootstrap' phase.
* Spring Cloud Bus implementation based on Consul https://www.consul.io/docs/agent/http/event.html[events]

== Running the sample

1. Run `docker-compose up`
2. Verify consul is running by visiting http://localhost:8500
3. Run `mvn package` this will bring in the required spring cloud maven repositories and build
4. Run `java -jar spring-cloud-consul-sample/target/spring-cloud-consul-sample-${VERSION}.jar`
5. visit http://localhost:8080, verify that `{"serviceId":"<yourhost>:8080","host":"<yourhost>","port":8080}` results
6. run `java -jar spring-cloud-consul-sample/target/spring-cloud-consul-sample-${VERSION}.jar --server.port=8081`
7. visit http://localhost:8080 again, verify that `{"serviceId":"<yourhost>:8081","host":"<yourhost>","port":8081}` eventually shows up in the results in a round robbin fashion (may take a minute or so).

== Building

include::https://raw.githubusercontent.com/spring-cloud/spring-cloud-build/master/docs/src/main/asciidoc/building.adoc[]

include::https://raw.githubusercontent.com/spring-cloud/spring-cloud-build/master/docs/src/main/asciidoc/building-lombok.adoc[]

== Contributing

include::https://raw.githubusercontent.com/spring-cloud/spring-cloud-build/master/docs/src/main/asciidoc/contributing.adoc[]