| # |
| # Licensed to the Apache Software Foundation (ASF) under one |
| # or more contributor license agreements. See the NOTICE file |
| # distributed with this work for additional information |
| # regarding copyright ownership. The ASF licenses this file |
| # to you under the Apache License, Version 2.0 (the |
| # "License"); you may not use this file except in compliance |
| # with the License. You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, |
| # software distributed under the License is distributed on an |
| # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| # KIND, either express or implied. See the License for the |
| # specific language governing permissions and limitations |
| # under the License. |
| # |
| |
| version: '3' |
| services: |
| zookeeper: |
| image: zookeeper:latest |
| hostname: zookeeper |
| ports: |
| - "2181:2181" |
| environment: |
| ZOO_MY_ID: 1 |
| ZOO_PORT: 2181 |
| ZOO_SERVERS: server.1=zookeeper:2888:3888;2181 |
| volumes: |
| - ./pinot-docker-demo/zookeeper/data:/data |
| - ./pinot-docker-demo/zookeeper/datalog:/datalog |
| kafka: |
| image: confluentinc/cp-kafka:5.3.0 |
| hostname: kafka |
| ports: |
| - "9092:9092" |
| environment: |
| KAFKA_ADVERTISED_LISTENERS: LISTENER_DOCKER_INTERNAL://kafka:19092,LISTENER_DOCKER_EXTERNAL://kafka:9092 |
| KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: LISTENER_DOCKER_INTERNAL:PLAINTEXT,LISTENER_DOCKER_EXTERNAL:PLAINTEXT |
| KAFKA_INTER_BROKER_LISTENER_NAME: LISTENER_DOCKER_INTERNAL |
| KAFKA_ZOOKEEPER_CONNECT: "zookeeper:2181/kafka" |
| KAFKA_BROKER_ID: 1 |
| KAFKA_LOG4J_LOGGERS: "kafka.controller=INFO,kafka.producer.async.DefaultEventHandler=INFO,state.change.logger=INFO" |
| KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1 |
| volumes: |
| - ./pinot-docker-demo/kafka/data:/var/lib/kafka/data |
| depends_on: |
| - zookeeper |
| pinot-controller: |
| image: apachepinot/pinot:release-0.7.1 |
| hostname: pinot-controller |
| volumes: |
| - ./pinot-docker-demo/pinot/controller:/tmp/data/controller |
| ports: |
| - "9000:9000" |
| command: StartController -zkAddress zookeeper:2181 |
| depends_on: |
| - kafka |
| pinot-broker: |
| image: apachepinot/pinot:release-0.7.1 |
| hostname: pinot-broker |
| ports: |
| - "8099:8099" |
| command: StartBroker -zkAddress zookeeper:2181 |
| depends_on: |
| - zookeeper |
| - kafka |
| - pinot-controller |
| pinot-server: |
| image: apachepinot/pinot:release-0.7.1 |
| hostname: pinot-server |
| volumes: |
| - ./pinot-docker-demo/pinot/server:/tmp/data/server |
| ports: |
| - "8098:8098" |
| command: StartServer -zkAddress zookeeper:2181 |
| depends_on: |
| - zookeeper |
| - kafka |
| - pinot-controller |