I have one Tyk Gateway and 2 docker containers of a REST test service (on 2 EC2 VM).
When I add a manual load balancing between the 2 containers it works perfectly.
But when a container shuts down, tyk continues trying to reach this service, so I decided to try "service discovery" with consul.io
I have a Consul cluster and in the service definition in the dashboard I keep the "Enable round-robin load balancing" checked and I clean the "Add LB targets" field.
I check "Enable service discovery"
Query endpoint : http://XXX.XXX.XXX.XXX:8500/v1/catalog/service/chuckrest
Does this endpoint return a list? : Checked
Are the values nested? : Unchecked
Data path : array.ServiceAddress
Is port information separate from the hostname? Checked
Port data path : array.ServicePort
When I try a REST call to the tyk endpoint I have an error :
 Get http://XXX.XXX.XXX.XXX:8080/chuckrest/api/getrandomfact: EOF
This output is taken from an "ApacheBench like" container (https://hub.docker.com/r/ondrejmo/boom/)
And using fiddler I have this :
HTTP/1.1 504 Fiddler - Receive Failure
Date: Wed, 23 Mar 2016 14:42:34 GMT
Content-Type: text/html; charset=UTF-8
Cache-Control: no-cache, must-revalidate
[Fiddler] ReadResponse() failed: The server did not return a complete response for this request. Server returned 0 bytes
If I remove the discovery, everything works again.