forked from danifitz/spring-petclinic-microservices
-
Notifications
You must be signed in to change notification settings - Fork 0
/
docker-compose.yml
130 lines (118 loc) · 4.28 KB
/
docker-compose.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
version: '2'
services:
config-server:
image: springcommunity/spring-petclinic-config-server
container_name: config-server
mem_limit: 512M
ports:
- 8888:8888
discovery-server:
image: springcommunity/spring-petclinic-discovery-server
container_name: discovery-server
mem_limit: 512M
depends_on:
- config-server
entrypoint: ["./dockerize","-wait=tcp://config-server:8888","-timeout=60s","--","java", "-XX:+UnlockExperimentalVMOptions", "-XX:+UseCGroupMemoryLimitForHeap", "-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
ports:
- 8761:8761
customers-service:
image: springcommunity/spring-petclinic-customers-service
container_name: customers-service
mem_limit: 512M
depends_on:
- config-server
- discovery-server
volumes:
- ./logs:/tmp/logs
entrypoint: ["./dockerize","-wait=tcp://discovery-server:8761","-timeout=60s","--","java", "-XX:+UnlockExperimentalVMOptions", "-XX:+UseCGroupMemoryLimitForHeap", "-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
ports:
- 8081:8081
visits-service:
image: springcommunity/spring-petclinic-visits-service
container_name: visits-service
mem_limit: 512M
depends_on:
- config-server
- discovery-server
volumes:
- ./logs:/tmp/logs
entrypoint: ["./dockerize","-wait=tcp://discovery-server:8761","-timeout=60s","--","java", "-XX:+UnlockExperimentalVMOptions", "-XX:+UseCGroupMemoryLimitForHeap", "-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
ports:
- 8082:8082
vets-service:
image: springcommunity/spring-petclinic-vets-service
container_name: vets-service
mem_limit: 512M
depends_on:
- config-server
- discovery-server
volumes:
- ./logs:/tmp/logs
entrypoint: ["./dockerize","-wait=tcp://discovery-server:8761","-timeout=60s","--","java", "-XX:+UnlockExperimentalVMOptions", "-XX:+UseCGroupMemoryLimitForHeap", "-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
ports:
- 8083:8083
api-gateway:
image: springcommunity/spring-petclinic-api-gateway
container_name: api-gateway
mem_limit: 512M
depends_on:
- config-server
- discovery-server
volumes:
- ./logs:/tmp/logs
entrypoint: ["./dockerize","-wait=tcp://discovery-server:8761","-timeout=60s","--","java", "-XX:+UnlockExperimentalVMOptions", "-XX:+UseCGroupMemoryLimitForHeap", "-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
ports:
- 8080:8080
# Not needed since we send traces to new relic rather than the zipkin backend
# tracing-server:
# image: openzipkin/zipkin
# container_name: tracing-server
# mem_limit: 512M
# environment:
# - JAVA_OPTS=-XX:+UnlockExperimentalVMOptions -Djava.security.egd=file:/dev/./urandom
# ports:
# - 9411:9411
admin-server:
image: springcommunity/spring-petclinic-admin-server
container_name: admin-server
mem_limit: 512M
depends_on:
- config-server
- discovery-server
volumes:
- ./logs:/tmp/logs
entrypoint: ["./dockerize","-wait=tcp://discovery-server:8761","-timeout=60s","--","java", "-XX:+UnlockExperimentalVMOptions", "-XX:+UseCGroupMemoryLimitForHeap", "-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
ports:
- 9090:9090
hystrix-dashboard:
image: springcommunity/spring-petclinic-hystrix-dashboard
container_name: hystrix-dashboard
mem_limit: 512M
depends_on:
- config-server
- discovery-server
volumes:
- ./logs:/tmp/logs
entrypoint: ["./dockerize","-wait=tcp://discovery-server:8761","-timeout=60s","--","java", "-XX:+UnlockExperimentalVMOptions", "-XX:+UseCGroupMemoryLimitForHeap", "-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
ports:
- 7979:7979
fluentd-logging:
image: fluentd:newrelic
container_name: fluentd-logging
mem_limit: 512M
volumes:
- ./logs:/fluentd/log
# Grafana / Prometheus
# Not needed because we are sending metrics to New Relic
# grafana-server:
# build: ./docker/grafana
# container_name: grafana-server
# mem_limit: 256M
# ports:
# - 3000:3000
# prometheus-server:
# build: ./docker/prometheus
# container_name: prometheus-server
# mem_limit: 256M
# ports:
# - 9091:9090