-
Notifications
You must be signed in to change notification settings - Fork 2
/
docker-compose.yml
83 lines (83 loc) · 2.32 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
version: '2.1'
services:
zookeeper:
container_name: zookeeper
image: confluentinc/cp-zookeeper:latest
restart: unless-stopped
environment:
ZOOKEEPER_CLIENT_PORT: 2181
ZOOKEEPER_TICK_TIME: 2000
ports:
- "22181:2181"
networks:
- rtdb-network
kafka:
container_name: kafka
image: confluentinc/cp-kafka:latest
restart: unless-stopped
depends_on:
- zookeeper
ports:
- "29092:29092"
environment:
KAFKA_BROKER_ID: 1
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:9092,PLAINTEXT_HOST://localhost:29092
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT
KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
networks:
- rtdb-network
mongo:
container_name: mongo
image: mongo:latest
restart: unless-stopped
command: [ "mongod", "--replSet", "rs0" ]
ports:
- "27017:27017"
volumes:
- ./mongo-init.js:/docker-entrypoint-initdb.d/mongo-init.js:ro
networks:
- rtdb-network
connect:
container_name: connect
image: debezium/connect:1.5
restart: unless-stopped
links:
- kafka
- mongo
depends_on:
- kafka
ports:
- "8083:8083"
environment:
- BOOTSTRAP_SERVERS=kafka:9092
- GROUP_ID=1
- CONFIG_STORAGE_TOPIC=dbz-connect.configs
- OFFSET_STORAGE_TOPIC=dbz-connect.offsets
- STATUS_STORAGE_TOPIC=dbz-connect.statuses
healthcheck:
test: [ "CMD", "curl", "-H", "Accept:application/json", "-f", "connect:8083/connectors" ]
interval: 5s
timeout: 2s
retries: 5
networks:
- rtdb-network
connect_setup:
image: curlimages/curl
entrypoint: [ "/bin/sh","-c" ]
depends_on:
connect:
condition: service_healthy
volumes:
- ./dbz-mongodb-connector.json:/tmp/dbz-mongodb-connector.json:ro
command:
- |
cat /tmp/dbz-mongodb-connector.json
curl -v -X POST -H "Accept:application/json" -H "Content-Type:application/json" --data "@/tmp/dbz-mongodb-connector.json" connect:8083/connectors
curl -v -H "Content-Type:application/json" connect:8083/connectors
networks:
- rtdb-network
networks:
rtdb-network:
external: true