You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Add support to optionally start kafka
- Align with manual docker steps like networks
- Improve script and add health checks
- Make image tags configurable. create sub-sections as needed
@@ -84,6 +84,16 @@ Create an isolated bridge network in docker
84
84
docker network create -d bridge pinot-demo
85
85
```
86
86
87
+
#### Export Docker Image tags
88
+
89
+
Export the necessary docker image tags for Pinot, Zookeeper, and Kafka.
90
+
91
+
```
92
+
export PINOT_IMAGE=apachepinot/pinot:1.2.0
93
+
export ZK_IMAGE=zookeeper:3.9.2
94
+
export KAFKA_IMAGE= bitnami/kafka:3.6
95
+
```
96
+
87
97
#### Start Zookeeper
88
98
89
99
Start Zookeeper in daemon mode. This is a single node zookeeper setup. Zookeeper is the central metadata store for Pinot and should be set up with replication for production use. For more information, see [Running Replicated Zookeeper](https://zookeeper.apache.org/doc/r3.6.0/zookeeperStarted.html#sc\_RunningReplicatedZooKeeper).
@@ -94,7 +104,7 @@ docker run \
94
104
--name pinot-zookeeper \
95
105
--restart always \
96
106
-p 2181:2181 \
97
-
-d zookeeper:3.9.2
107
+
-d ${ZK_IMAGE}
98
108
```
99
109
100
110
#### Start Pinot Controller
@@ -162,7 +172,7 @@ docker run --rm -ti \
162
172
-e KAFKA_BROKER_ID=0 \
163
173
-e KAFKA_ADVERTISED_HOST_NAME=kafka \
164
174
-p 9092:9092 \
165
-
-d bitnami/kafka:latest
175
+
-d ${KAFKA_IMAGE}
166
176
```
167
177
168
178
Now all Pinot related components are started as an empty cluster.
@@ -176,86 +186,173 @@ docker container ls -a
176
186
**Sample Console Output**
177
187
178
188
```
179
-
CONTAINER ID IMAGECOMMANDCREATEDSTATUS PORTS NAMES
180
-
9ec20e4463fabitnami/kafka:latest"start-kafka.sh" 43 minutes ago Up 43 minutes kafka
181
-
0775f5d8d6bfapachepinot/pinot:latest"./bin/pinot-admin.s…" 44 minutes ago Up 44 minutes 8096-8099/tcp, 9000/tcp pinot-server
182
-
64c6392b2e04apachepinot/pinot:latest"./bin/pinot-admin.s…" 44 minutes ago Up 44 minutes 8096-8099/tcp, 9000/tcp pinot-broker
183
-
b6d0f2bd26a3apachepinot/pinot:latest"./bin/pinot-admin.s…" 45 minutes ago Up 45 minutes 8096-8099/tcp, 0.0.0.0:9000->9000/tcp pinot-controller
184
-
570416fc530ezookeeper:3.9.2 "/docker-entrypoint.…" 45 minutes ago Up 45 minutes 2888/tcp, 3888/tcp, 0.0.0.0:2181->2181/tcp, 8080/tcp pinot-zookeeper
189
+
CONTAINER ID IMAGECOMMANDCREATEDSTATUSPORTS NAMES
190
+
accc70bc7f07 bitnami/kafka:3.6 "/opt/bitnami/script…" About a minute ago Up About a minute0.0.0.0:9092->9092/tcp kafka
191
+
1b8b80395959 apachepinot/pinot:1.2.0 "./bin/pinot-admin.s…" About a minute ago Up About a minute 8096-8097/tcp, 8099/tcp, 9000/tcp, 0.0.0.0:8098->8098/tcp pinot-server
192
+
134a67eec957 apachepinot/pinot:1.2.0 "./bin/pinot-admin.s…" About a minute ago Up About a minute 8096-8098/tcp, 9000/tcp, 0.0.0.0:8099->8099/tcp pinot-broker
193
+
4fcc72cb7302 apachepinot/pinot:1.2.0 "./bin/pinot-admin.s…" About a minute ago Up About a minute 8096-8099/tcp, 0.0.0.0:9000->9000/tcp pinot-controller
194
+
144304524f6c zookeeper:3.9.2 "/docker-entrypoint.…" About a minute ago Up About a minute 2888/tcp, 3888/tcp, 0.0.0.0:2181->2181/tcp, 8080/tcp pinot-zookeeper
185
195
```
186
196
187
197
### Docker Compose
188
198
199
+
#### Export Docker Image tags
200
+
201
+
Optionally, export the necessary docker image tags for Pinot, Zookeeper, and Kafka.
202
+
203
+
```
204
+
export PINOT_IMAGE=apachepinot/pinot:1.2.0
205
+
export ZK_IMAGE=zookeeper:3.9.2
206
+
export KAFKA_IMAGE=bitnami/kafka:3.6
207
+
```
208
+
209
+
#### Create _docker-compose.yml_ file
189
210
Create a file called _docker-compose.yml_ that contains the following:
Run the following command to launch all the components:
329
+
#### Launch the components
330
+
Run the following command to launch all the required components:
240
331
241
332
```
242
333
docker compose --project-name pinot-demo up
243
334
```
244
335
336
+
OR, optionally, run the following command to launch all the components, including kafka:
337
+
```
338
+
export KAFKA_REPLICAS=1
339
+
docker compose --project-name pinot-demo up
340
+
```
245
341
Run the below command to check the container status:
246
342
247
343
```
248
-
docker container ls
344
+
docker container ls -a
249
345
```
250
346
251
347
**Sample Console Output**
252
348
253
349
```
254
-
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
255
-
ba5cb0868350 apachepinot/pinot:1.2.0 "./bin/pinot-admin.s…" About a minute ago Up About a minute 8096-8099/tcp, 9000/tcp pinot-server
256
-
698f160852f9 apachepinot/pinot:1.2.0 "./bin/pinot-admin.s…" About a minute ago Up About a minute 8096-8098/tcp, 9000/tcp, 0.0.0.0:8099->8099/tcp, :::8099->8099/tcp pinot-broker
257
-
b1ba8cf60d69 apachepinot/pinot:1.2.0 "./bin/pinot-admin.s…" About a minute ago Up About a minute 8096-8099/tcp, 0.0.0.0:9000->9000/tcp, :::9000->9000/tcp pinot-controller
258
-
54e7e114cd53 zookeeper:3.9.2 "/docker-entrypoint.…" About a minute ago Up About a minute 2888/tcp, 3888/tcp, 0.0.0.0:2181->2181/tcp, :::2181->2181/tcp, 8080/tcp pinot-zookeeper
350
+
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
351
+
f34a046ac69f bitnami/kafka:3.6 "/opt/bitnami/script…" 9 minutes ago Up About a minute (healthy) 0.0.0.0:9092->9092/tcp kafka
352
+
f28021bd5b1d apachepinot/pinot:1.2.0 "./bin/pinot-admin.s…" 18 minutes ago Up About a minute (healthy) 8096-8097/tcp, 8099/tcp, 9000/tcp, 0.0.0.0:8098->8098/tcp pinot-server
353
+
e938453054b0 apachepinot/pinot:1.2.0 "./bin/pinot-admin.s…" 18 minutes ago Up About a minute (healthy) 8096-8098/tcp, 9000/tcp, 0.0.0.0:8099->8099/tcp pinot-broker
354
+
e0d0c71303a8 apachepinot/pinot:1.2.0 "./bin/pinot-admin.s…" 18 minutes ago Up About a minute (healthy) 8096-8099/tcp, 0.0.0.0:9000->9000/tcp pinot-controller
355
+
4be5f168f252 zookeeper:3.9.2 "/docker-entrypoint.…" 18 minutes ago Up About a minute (healthy) 2888/tcp, 3888/tcp, 0.0.0.0:2181->2181/tcp, 8080/tcp pinot-zookeeper
259
356
```
260
357
261
358
Once your cluster is up and running, see [Exploring Pinot](../components/exploring-pinot.md) to learn how to run queries against the data.
0 commit comments