1+ version : ' 3.8'
2+
13services :
4+ eureka-service :
5+ image : uzjaee/eureka:0.2 # 빌드한 eureka 이미지 이름
6+ ports :
7+ - ' 12001:12001' # Eureka의 기본 포트
8+ networks :
9+ - service-network
10+
11+ gateway-service :
12+ image : uzjaee/gateway-service:0.2 # 빌드한 gateway 이미지 이름
13+ ports :
14+ - ' 12011:12011' # Gateway의 포트
15+ environment :
16+ - SPRING_CLOUD_GATEWAY_DISCOVERY_CLIENT_ENABLED=true
17+ - EUREKA_CLIENT_SERVICEURL_DEFAULTZONE=http://eureka-service:12001/eureka/
18+ depends_on :
19+ - eureka-service
20+ networks :
21+ - service-network
22+
23+ user-service :
24+ image : uzjaee/user-service:0.4
25+ ports :
26+ - ' 12021:12021'
27+ environment :
28+ - SPRING_DATASOURCE_URL=jdbc:postgresql://postgres-user:5432/fortickets
29+ - SPRING_DATASOURCE_USERNAME=forman
30+ - SPRING_DATASOURCE_PASSWORD=1234
31+ - EUREKA_CLIENT_SERVICEURL_DEFAULTZONE=http://eureka-service:12001/eureka/
32+ - SPRING_REDIS_HOST=redis
33+ - SPRING_REDIS_PORT=6379
34+ depends_on :
35+ - postgres-user
36+ - eureka-service
37+ - redis
38+ networks :
39+ - service-network
40+
41+
42+
43+ postgres-user :
44+ image : ' postgres:16.4'
45+ environment :
46+ - ' POSTGRES_DB=fortickets'
47+ - ' POSTGRES_PASSWORD=1234'
48+ - ' POSTGRES_USER=forman'
49+ ports :
50+ - ' 54322:5432'
51+ volumes :
52+ - ../db/user-service:/var/lib/postgresql/data
53+ networks :
54+ - service-network
55+
56+ concert-service :
57+ image : uzjaee/concert-service:0.2 # 빌드한 concert-service 이미지 이름
58+ ports :
59+ - ' 12031:12031' # Concert 서비스의 포트
60+ environment :
61+ - SPRING_DATASOURCE_URL=jdbc:postgresql://postgres-concert:5432/fortickets
62+ - SPRING_DATASOURCE_USERNAME=forman
63+ - SPRING_DATASOURCE_PASSWORD=1234
64+ - EUREKA_CLIENT_SERVICEURL_DEFAULTZONE=http://eureka-service:12001/eureka/
65+ depends_on :
66+ - postgres-concert
67+ - eureka-service
68+ networks :
69+ - service-network
70+
71+ postgres-concert :
72+ image : ' postgres:16.4'
73+ environment :
74+ - ' POSTGRES_DB=fortickets'
75+ - ' POSTGRES_PASSWORD=1234'
76+ - ' POSTGRES_USER=forman'
77+ ports :
78+ - ' 54323:5432'
79+ volumes :
80+ - ../db/concert-service:/var/lib/postgresql/data
81+ networks :
82+ - service-network
83+
84+ order-service :
85+ image : uzjaee/order-service:0.4 # 빌드한 order-service 이미지 이름
86+ ports :
87+ - ' 12041:12041' # Order 서비스의 포트
88+ environment :
89+ - SPRING_DATASOURCE_URL=jdbc:postgresql://postgres-order:5432/fortickets
90+ - SPRING_DATASOURCE_USERNAME=forman
91+ - SPRING_DATASOURCE_PASSWORD=1234
92+ - EUREKA_CLIENT_SERVICEURL_DEFAULTZONE=http://eureka-service:12001/eureka/
93+ - KAFKA_BOOTSTRAPSERVERS=kafka:9092 # Kafka 브로커 URL
94+ - SPRING_REDIS_HOST=redis
95+ - SPRING_REDIS_PORT=6379
96+ depends_on :
97+ - postgres-order
98+ - eureka-service
99+ - redis
100+ - kafka
101+ networks :
102+ - service-network
103+
104+ postgres-order :
105+ image : ' postgres:16.4'
106+ environment :
107+ - ' POSTGRES_DB=fortickets'
108+ - ' POSTGRES_PASSWORD=1234'
109+ - ' POSTGRES_USER=forman'
110+ ports :
111+ - ' 54324:5432'
112+ volumes :
113+ - ../db/order-service:/var/lib/postgresql/data
114+ networks :
115+ - service-network
116+
2117 zipkin :
3118 image : openzipkin/zipkin
4119 ports :
5- - " 9411:9411" # Zipkin UI 접근 포트
120+ - " 9411:9411" # Zipkin UI에 접근할 포트
121+ networks :
122+ - service-network
6123
7124 zookeeper :
8- image : wurstmeister/ zookeeper:latest
9- platform : linux/amd64
125+ image : zookeeper:latest
126+ # platform: linux/amd64
10127 ports :
11128 - " 2181:2181"
12129 environment :
13130 ZOOKEEPER_CLIENT_PORT : 2181
14131 ZOOKEEPER_TICK_TIME : 2000
132+ networks :
133+ - service-network
15134
16135 kafka :
17136 image : wurstmeister/kafka:latest
18- platform : linux/amd64
137+ # platform: linux/arm64/v8
19138 ports :
20139 - " 9092:9092"
21140 environment :
@@ -26,61 +145,45 @@ services:
26145 KAFKA_ZOOKEEPER_CONNECT : zookeeper:2181
27146 volumes :
28147 - /var/run/docker.sock:/var/run/docker.sock
148+ networks :
149+ - service-network
29150
30- kafka-ui :
31- image : provectuslabs/kafka-ui:latest
32- platform : linux/amd64
33- ports :
34- - " 8080:8080"
35- environment :
36- KAFKA_CLUSTERS_0_NAME : local
37- KAFKA_CLUSTERS_0_BOOTSTRAPSERVERS : kafka:29092
38- KAFKA_CLUSTERS_0_ZOOKEEPER : zookeeper:2181
39- KAFKA_CLUSTERS_0_READONLY : " false"
40-
41-
151+ # kafka-ui:
152+ # image: provectuslabs/kafka-ui:latest
153+ # platform: linux/amd64
154+ # ports:
155+ # - "8080:8080"
156+ # environment:
157+ # KAFKA_CLUSTERS_0_NAME: local
158+ # KAFKA_CLUSTERS_0_BOOTSTRAPSERVERS: kafka:29092
159+ # KAFKA_CLUSTERS_0_ZOOKEEPER: zookeeper:2181
160+ # KAFKA_CLUSTERS_0_READONLY: "false"
161+ # networks:
162+ # - service-network
42163
43- redis-stack :
44- image : redis/redis-stack
45- container_name : redis-stack-compose
46- restart : always
47- environment :
48- REDIS_ARGS : " --requirepass systempass"
49- volumes :
50- - ./redis_data:/data
51164
52- # Redis 마스터 노드 1
53165 redis :
54- image : redis:7
166+ image : redis:latest
55167 container_name : redis
56- # command: [ "redis-server", "--appendonly", "yes", "--requirepass", "systempass" ]
57168 ports :
58169 - " 6379:6379"
59170 volumes :
60171 - ./redis_data:/data
61-
62- prometheus :
63- image : prom/prometheus
64- container_name : prometheus
65- ports :
66- - " 9090:9090"
67- volumes :
68- - ./docker-config/prometheus.yml:/etc/prometheus/prometheus.yml # 상대 경로 수정
69- command :
70- - ' --config.file=/etc/prometheus/prometheus.yml'
71172 networks :
72- - grafana -network
173+ - service -network
73174
74- grafana :
75- image : grafana/grafana
76- container_name : grafana
77- ports :
78- - " 3000:3000"
79- depends_on :
80- - prometheus
81- networks :
82- - grafana-network
175+ # redis-stack:
176+ # image: redis/redis-stack
177+ # container_name: redis-stack-compose
178+ # restart: always
179+ # environment:
180+ # REDIS_ARGS: "--requirepass systempass"
181+ # volumes:
182+ # - ./redis_data:/data
183+ # networks:
184+ # - service-network
185+
186+ # Redis 마스터 노드 1
83187
84188networks :
85- grafana-network :
86- external : false # 내부 네트워크로 설정
189+ service-network :
0 commit comments