-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
98 lines (97 loc) · 2.91 KB
/
docker-compose.yml
File metadata and controls
98 lines (97 loc) · 2.91 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
version: "2"
services:
jobmanager:
image: flink:1.15-scala_2.12
expose:
- "6123"
ports:
- "8081:8081"
links:
- kafka
command: jobmanager
environment:
- |
FLINK_PROPERTIES=
jobmanager.rpc.address: jobmanager
taskmanager:
image: flink:1.15-scala_2.12
depends_on:
- jobmanager
command: taskmanager
links:
- kafka
scale: 1
environment:
- |
FLINK_PROPERTIES=
jobmanager.rpc.address: jobmanager
taskmanager.numberOfTaskSlots: 6
parallelism.default: 1
zookeeper:
image: "bitnami/zookeeper:latest"
ports:
- "2181:2181"
environment:
- ALLOW_ANONYMOUS_LOGIN=true
- ZOO_ENABLE_AUTH=no
kafka:
image: "bitnami/kafka:latest"
links:
- zookeeper
ports:
- "9093:9093"
environment:
- BITNAMI_DEBUG=true
- ALLOW_PLAINTEXT_LISTENER=yes
- KAFKA_CFG_ZOOKEEPER_CONNECT=zookeeper:2181
- KAFKA_CFG_LISTENERS=INTERNAL://:9092,CLIENT://:9093,
# When deploying to production, the client advertised listener localhost needs to become the IP of the machine.
- KAFKA_CFG_ADVERTISED_LISTENERS=INTERNAL://kafka:9092,CLIENT://localhost:9093
- KAFKA_INTER_BROKER_LISTENER_NAME=INTERNAL
- KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP=INTERNAL:PLAINTEXT,CLIENT:SASL_PLAINTEXT
- KAFKA_CFG_SASL_MECHANISM_INTER_BROKER_PROTOCOL=PLAINTEXT
- KAFKA_ZOOKEEPER_PROTOCOL=PLAINTEXT
- KAFKA_CFG_AUTHORIZER_CLASS_NAME=kafka.security.authorizer.AclAuthorizer
- KAFKA_CFG_SUPER_USERS=User:${KAFKA_USER};User:ANONYMOUS;
# Client credentials
- KAFKA_CLIENT_USERS=${KAFKA_USER}
- KAFKA_CLIENT_PASSWORDS=${KAFKA_PASSWORD}
depends_on:
- zookeeper
mysql:
# mysql://mysqluser:mysqlpw@127.0.0.1:3306/inventory (on host machine with permission to update)
# mysql://debezium:dbz@mysql:3306/inventory (within docker)
image: quay.io/debezium/example-mysql:1.9
ports:
- 3306:3306
environment:
- MYSQL_ROOT_PASSWORD=debezium
- MYSQL_USER=mysqluser
- MYSQL_PASSWORD=mysqlpw
mysqltwo:
# mysql://mysqluser:mysqlpw@127.0.0.1:3307/inventory (on host machine with permission to update)
# mysql://debezium:dbz@mysqltwo:3306/inventory (within docker)
image: quay.io/debezium/example-mysql:1.9
ports:
- 3307:3306
environment:
- MYSQL_ROOT_PASSWORD=debezium
- MYSQL_USER=mysqluser
- MYSQL_PASSWORD=mysqlpw
connect:
image: quay.io/debezium/connect:latest
ports:
- 8083:8083
- 5005:5005
links:
- kafka
- mysql
- mysqltwo
- zookeeper
environment:
- BOOTSTRAP_SERVERS=kafka:9092
- GROUP_ID=1
- CONFIG_STORAGE_TOPIC=my_connect_configs
- OFFSET_STORAGE_TOPIC=my_connect_offsets
- STATUS_STORAGE_TOPIC=my_source_connect_statuses
- STATUS_STORAGE_TOPIC=my_connect_statuses