-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
131 lines (130 loc) · 4.13 KB
/
docker-compose.yml
File metadata and controls
131 lines (130 loc) · 4.13 KB
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
131
version: "3"
services:
db:
image: postgres
volumes:
- postgres-data:/var/lib/postgresql/data
ports:
- 8001:5432
environment:
- POSTGRES_PASSWORD=admin
- POSTGRES_USER=postgres
- POSTGRES_DB=testdb
restart: unless-stopped
order-service:
build: order-service/.
environment:
SPRING_DATASOURCE_URL: jdbc:postgresql://db:5432/testdb
SPRING_DATASOURCE_USERNAME: postgres
SPRING_DATASOURCE_PASSWORD: admin
SERVICE_URL_DEFAULT_ZONE: http://discovery-service:8761/eureka/
depends_on:
- "db"
- "kafka"
- "discovery-service"
discovery-service:
build: discovery-service/.
ports:
- "8761:8761"
environment:
SERVER_PORT: 8761
item-service:
build: item-service/.
environment:
SPRING_DATASOURCE_URL: jdbc:postgresql://db:5432/testdb
SPRING_DATASOURCE_USERNAME: postgres
SPRING_DATASOURCE_PASSWORD: admin
SERVER_PORT: 8080
SERVICE_URL_DEFAULT_ZONE: http://discovery-service:8761/eureka/
depends_on:
- "db"
- "kafka"
- "discovery-service"
customer-service:
build: customer-service/.
environment:
SPRING_DATASOURCE_URL: jdbc:postgresql://db:5432/testdb
SPRING_DATASOURCE_USERNAME: postgres
SPRING_DATASOURCE_PASSWORD: admin
SERVER_PORT: 8080
SERVICE_URL_DEFAULT_ZONE: http://discovery-service:8761/eureka/
depends_on:
- "db"
- "kafka"
- "discovery-service"
address-service:
build: address-service/.
environment:
SPRING_DATASOURCE_URL: jdbc:postgresql://db:5432/testdb
SPRING_DATASOURCE_USERNAME: postgres
SPRING_DATASOURCE_PASSWORD: admin
SERVER_PORT: 8080
SERVICE_URL_DEFAULT_ZONE: http://discovery-service:8761/eureka/
depends_on:
- "db"
- "kafka"
- "discovery-service"
payment-method-service:
build: payment-method-service/.
environment:
SPRING_DATASOURCE_URL: jdbc:postgresql://db:5432/testdb
SPRING_DATASOURCE_USERNAME: postgres
SPRING_DATASOURCE_PASSWORD: admin
SERVER_PORT: 8080
SERVICE_URL_DEFAULT_ZONE: http://discovery-service:8761/eureka/
depends_on:
- "db"
- "kafka"
- "discovery-service"
api-gateway:
build: api-gateway/.
ports:
- "8080:8080"
environment:
SERVER_PORT: 8080
SERVICE_URL_DEFAULT_ZONE: http://discovery-service:8761/eureka/
SPRING_KAFKA_BOOTSTRAP_SERVERS: kafka:9092
KAFKA_TOPIC_ORDER: order_batch
KAFKA_TOPIC_ORDERSTATUS: order_batch_status
depends_on:
- "db"
- "kafka"
- "discovery-service"
pgadmin:
image: dpage/pgadmin4:4.18
restart: always
environment:
PGADMIN_DEFAULT_EMAIL: dc297@dc297.io
PGADMIN_DEFAULT_PASSWORD: dc297
PGADMIN_LISTEN_PORT: 80
ports:
- "5000:80"
volumes:
- pgadmin-data:/var/lib/pgadmin
kafka:
image: spotify/kafka
ports:
- "2181:2181"
- "9092:9092"
hostname: kafka
container_name: kafka
environment:
- "ADVERTISED_HOST=kafka"
- "ADVERTISED_PORT=9092"
- "AUTO_CREATE_TOPICS=true"
command: >
bash -c
"(sleep 15s &&
/opt/kafka_2.11-0.10.1.0/bin/kafka-topics.sh
--create
--zookeeper
localhost:2181 --replication-factor 1 --partitions 1
--topic order_batch &) &&
(/opt/kafka_2.11-0.10.1.0/bin/kafka-topics.sh
--create
--zookeeper
localhost:2181 --replication-factor 1 --partitions 1
--topic order_batch_status &) && (supervisord -n)"
volumes:
postgres-data:
pgadmin-data: