forked from 42-195KM/backend
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
134 lines (121 loc) · 3.1 KB
/
docker-compose.yml
File metadata and controls
134 lines (121 loc) · 3.1 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
services:
postgres:
container_name: postgresdb
image: ankane/pgvector:latest
ports:
- "5432:5432"
environment:
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=postgres
networks:
- app_network
volumes:
- ./init.sql:/docker-entrypoint-initdb.d/init.sql
zookeeper:
container_name: zookeeper
image: wurstmeister/zookeeper:latest
ports:
- "2181:2181"
environment:
- ZOOKEEPER_CLIENT_PORT=2181
- ZOOKEEPER_TICK_TIME=2000
networks:
- app_network
kafka:
container_name: kafka
image: wurstmeister/kafka:latest
ports:
- "9092:9092"
depends_on:
- zookeeper
environment:
- KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181
# 내부와 외부 접근을 구분하여 설정. 내부에서는 kafka:29092로 접근하도록 구성합니다.
- KAFKA_ADVERTISED_LISTENERS=INSIDE://kafka:29092,OUTSIDE://localhost:9092
- KAFKA_LISTENER_SECURITY_PROTOCOL_MAP=INSIDE:PLAINTEXT,OUTSIDE:PLAINTEXT
- KAFKA_LISTENERS=INSIDE://0.0.0.0:29092,OUTSIDE://0.0.0.0:9092
- KAFKA_INTER_BROKER_LISTENER_NAME=INSIDE
volumes:
- /var/run/docker.sock:/var/run/docker.sock
networks:
- app_network
kafka-ui:
container_name: kafka-ui
image: provectuslabs/kafka-ui:latest
ports:
- "9093:8080"
depends_on:
- kafka
environment:
# 클러스터 이름을 지정하고, Kafka UI가 접근할 Kafka의 브로커 주소를 설정합니다.
- KAFKA_CLUSTERS_0_NAME=local
- KAFKA_CLUSTERS_0_BOOTSTRAPSERVERS=kafka:29092
- KAFKA_CLUSTERS_0_ZOOKEEPER=zookeeper:2181
networks:
- app_network
redis:
container_name: redis
image: redis/redis-stack
ports:
- "6379:6379"
networks:
- app_network
command: redis-server --appendonly yes --protected-mode no
# Redis 관리 UI 추가
redis-commander:
container_name: redis-commander
image: rediscommander/redis-commander:latest
ports:
- "8081:8081"
environment:
- REDIS_HOSTS=local:redis:6379
depends_on:
- redis
networks:
- app_network
zipkin:
container_name: zipkin
image: openzipkin/zipkin
ports:
- "9411:9411"
networks:
- app_network
prometheus:
image: prom/prometheus:latest
container_name: prometheus
ports:
- "9090:9090"
volumes:
- ./prometheus/prometheus.yml:/etc/prometheus/prometheus.yml
networks:
- app_network
grafana:
image: grafana/grafana:latest
container_name: grafana
ports:
- "7770:3000"
networks:
- app_network
loki:
container_name: loki
image: grafana/loki:2.9.2
ports:
- "7771:3100"
volumes:
- ./loki/config.yaml:/etc/loki/config.yaml
command: -config.file=/etc/loki/config.yaml
networks:
- app_network
kafka-exporter:
image: danielqsj/kafka-exporter:latest
ports:
- "9308:9308"
command: [ "--kafka.server=kafka:29092" ]
depends_on:
- kafka
restart: unless-stopped
networks:
- app_network
networks:
app_network:
driver: bridge