Add consul discoverable architecture
parent
734ea7ea3f
commit
39013928eb
|
@ -13,6 +13,9 @@ See [https://docs.docker.com/compose/](https://docs.docker.com/compose/).
|
||||||
|
|
||||||
# templates
|
# templates
|
||||||
|
|
||||||
|
## consul-discovery
|
||||||
|
Using consul to make a service-discoverable architecture.
|
||||||
|
|
||||||
## mongo_cluster
|
## mongo_cluster
|
||||||
Start 3 mongo instance to make a replica set.
|
Start 3 mongo instance to make a replica set.
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,45 @@
|
||||||
|
# This compose file will boot a typical scalable lb-backend topology.
|
||||||
|
# Registrator will listen on local docker socks to maintain all published containers. The information will be written to consulserver
|
||||||
|
# consul-template will listen on consulserver and update local lb configuration.
|
||||||
|
# http://yeasy.github.com
|
||||||
|
|
||||||
|
|
||||||
|
#backend web application, scale this with docker-compose scale web=3
|
||||||
|
web:
|
||||||
|
image: yeasy/simple-web:latest
|
||||||
|
environment:
|
||||||
|
SERVICE_80_NAME: http
|
||||||
|
SERVICE_NAME: web
|
||||||
|
SERVICE_TAGS: backend
|
||||||
|
ports:
|
||||||
|
- "80"
|
||||||
|
|
||||||
|
#load balancer will automatically update the config using consul-template
|
||||||
|
lb:
|
||||||
|
image: yeasy/nginx-consul-template:latest
|
||||||
|
hostname: lb
|
||||||
|
links:
|
||||||
|
- consulserver:consul
|
||||||
|
ports:
|
||||||
|
- "80:80"
|
||||||
|
|
||||||
|
consulserver:
|
||||||
|
image: gliderlabs/consul-server:latest
|
||||||
|
hostname: consulserver
|
||||||
|
ports:
|
||||||
|
- "8300"
|
||||||
|
- "8400"
|
||||||
|
- "8500:8500"
|
||||||
|
- "53"
|
||||||
|
command: -data-dir /tmp/consul -bootstrap -client 0.0.0.0
|
||||||
|
|
||||||
|
# listen on local docker sock to register the container with public ports to the consul service
|
||||||
|
registrator:
|
||||||
|
image: gliderlabs/registrator:master
|
||||||
|
hostname: registrator
|
||||||
|
links:
|
||||||
|
- consulserver:consul
|
||||||
|
volumes:
|
||||||
|
- "/var/run/docker.sock:/tmp/docker.sock"
|
||||||
|
command: -internal consul://consul:8500
|
||||||
|
#command: consul://consul:8500
|
Loading…
Reference in New Issue