mirror of https://github.com/apache/druid.git
400 lines
10 KiB
YAML
400 lines
10 KiB
YAML
# 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: "2.2"
|
|
|
|
# IP address ranges:
|
|
# 172.172.172.2: zookeeper + kafka (dockerfile depends on this)
|
|
# 172.172.172.3: metadata store
|
|
# 172.172.172.10-19: overlord
|
|
# 172.172.172.20-29: coordinator
|
|
# 172.172.172.30-39: historicals
|
|
# 172.172.172.40-49: middle managers
|
|
# 172.172.172.50-59: indexers
|
|
# 172.172.172.60-69: brokers
|
|
# 172.172.172.70-79: routers
|
|
# 172.172.172.101+: hadoop, other supporting infra
|
|
networks:
|
|
druid-it-net:
|
|
name: druid-it-net
|
|
ipam:
|
|
config:
|
|
- subnet: 172.172.172.0/24
|
|
|
|
services:
|
|
### always there supporting infra:
|
|
druid-zookeeper-kafka:
|
|
image: druid/cluster
|
|
container_name: druid-zookeeper-kafka
|
|
ports:
|
|
- 2181:2181
|
|
- 9092:9092
|
|
- 9093:9093
|
|
networks:
|
|
druid-it-net:
|
|
## Dockerfile depends on this address for this container it seems...
|
|
ipv4_address: 172.172.172.2
|
|
privileged: true
|
|
volumes:
|
|
- ${HOME}/shared:/shared
|
|
- ./service-supervisords/zookeeper.conf:/usr/lib/druid/conf/zookeeper.conf
|
|
- ./service-supervisords/kafka.conf:/usr/lib/druid/conf/kafka.conf
|
|
env_file:
|
|
- ./environment-configs/common
|
|
|
|
druid-metadata-storage:
|
|
image: druid/cluster
|
|
container_name: druid-metadata-storage
|
|
ports:
|
|
- 13306:3306
|
|
networks:
|
|
druid-it-net:
|
|
ipv4_address: 172.172.172.3
|
|
privileged: true
|
|
volumes:
|
|
- ${HOME}/shared:/shared
|
|
- ./service-supervisords/metadata-storage.conf:/usr/lib/druid/conf/metadata-storage.conf
|
|
env_file:
|
|
- ./environment-configs/common
|
|
|
|
|
|
### overlords
|
|
druid-overlord:
|
|
image: druid/cluster
|
|
container_name: druid-overlord
|
|
hostname: druid-overlord
|
|
networks:
|
|
druid-it-net:
|
|
ipv4_address: 172.172.172.10
|
|
ports:
|
|
- 8090:8090
|
|
- 8290:8290
|
|
- 5009:5009
|
|
privileged: true
|
|
volumes:
|
|
- ${HOME}/shared:/shared
|
|
- ./service-supervisords/druid.conf:/usr/lib/druid/conf/druid.conf
|
|
env_file:
|
|
- ./environment-configs/common
|
|
- ./environment-configs/overlord
|
|
|
|
druid-overlord-two:
|
|
image: druid/cluster
|
|
container_name: druid-overlord-two
|
|
hostname: druid-overlord-two
|
|
networks:
|
|
druid-it-net:
|
|
ipv4_address: 172.172.172.11
|
|
ports:
|
|
- 8590:8090
|
|
- 8790:8290
|
|
- 6009:5009
|
|
privileged: true
|
|
volumes:
|
|
- ${HOME}/shared:/shared
|
|
- ./service-supervisords/druid.conf:/usr/lib/druid/conf/druid.conf
|
|
env_file:
|
|
- ./environment-configs/common
|
|
- ./environment-configs/overlord
|
|
|
|
### coordinators
|
|
druid-coordinator:
|
|
image: druid/cluster
|
|
container_name: druid-coordinator
|
|
hostname: druid-coordinator
|
|
networks:
|
|
druid-it-net:
|
|
ipv4_address: 172.172.172.20
|
|
ports:
|
|
- 8081:8081
|
|
- 8281:8281
|
|
- 5006:5006
|
|
privileged: true
|
|
volumes:
|
|
- ${HOME}/shared:/shared
|
|
- ./service-supervisords/druid.conf:/usr/lib/druid/conf/druid.conf
|
|
env_file:
|
|
- ./environment-configs/common
|
|
- ./environment-configs/coordinator
|
|
|
|
druid-coordinator-two:
|
|
image: druid/cluster
|
|
container_name: druid-coordinator-two
|
|
hostname: druid-coordinator-two
|
|
networks:
|
|
druid-it-net:
|
|
ipv4_address: 172.172.172.21
|
|
ports:
|
|
- 8581:8081
|
|
- 8781:8281
|
|
- 6006:5006
|
|
privileged: true
|
|
volumes:
|
|
- ${HOME}/shared:/shared
|
|
- ./service-supervisords/druid.conf:/usr/lib/druid/conf/druid.conf
|
|
env_file:
|
|
- ./environment-configs/common
|
|
- ./environment-configs/coordinator
|
|
|
|
### historicals
|
|
druid-historical:
|
|
image: druid/cluster
|
|
container_name: druid-historical
|
|
hostname: druid-historical
|
|
networks:
|
|
druid-it-net:
|
|
ipv4_address: 172.172.172.30
|
|
ports:
|
|
- 8083:8083
|
|
- 8283:8283
|
|
- 5007:5007
|
|
privileged: true
|
|
volumes:
|
|
- ${HOME}/shared:/shared
|
|
- ./service-supervisords/druid.conf:/usr/lib/druid/conf/druid.conf
|
|
env_file:
|
|
- ./environment-configs/common
|
|
- ./environment-configs/historical
|
|
|
|
### middle managers
|
|
druid-middlemanager:
|
|
image: druid/cluster
|
|
container_name: druid-middlemanager
|
|
hostname: druid-middlemanager
|
|
networks:
|
|
druid-it-net:
|
|
ipv4_address: 172.172.172.40
|
|
ports:
|
|
- 5008:5008
|
|
- 8091:8091
|
|
- 8291:8291
|
|
- 8100:8100
|
|
- 8101:8101
|
|
- 8102:8102
|
|
- 8103:8103
|
|
- 8104:8104
|
|
- 8105:8105
|
|
- 8300:8300
|
|
- 8301:8301
|
|
- 8302:8302
|
|
- 8303:8303
|
|
- 8304:8304
|
|
- 8305:8305
|
|
privileged: true
|
|
volumes:
|
|
- ./../src/test/resources:/resources
|
|
- ${HOME}/shared:/shared
|
|
- ./service-supervisords/druid.conf:/usr/lib/druid/conf/druid.conf
|
|
env_file:
|
|
- ./environment-configs/common
|
|
- ./environment-configs/middlemanager
|
|
|
|
### indexers
|
|
druid-indexer:
|
|
image: druid/cluster
|
|
container_name: druid-indexer
|
|
hostname: druid-indexer
|
|
networks:
|
|
druid-it-net:
|
|
ipv4_address: 172.172.172.50
|
|
ports:
|
|
- 5008:5008
|
|
- 8091:8091
|
|
- 8291:8291
|
|
privileged: true
|
|
volumes:
|
|
- ./../src/test/resources:/resources
|
|
- ${HOME}/shared:/shared
|
|
- ./service-supervisords/druid.conf:/usr/lib/druid/conf/druid.conf
|
|
env_file:
|
|
- ./environment-configs/common
|
|
- ./environment-configs/indexer
|
|
|
|
### brokers
|
|
druid-broker:
|
|
image: druid/cluster
|
|
hostname: druid-broker
|
|
container_name: druid-broker
|
|
networks:
|
|
druid-it-net:
|
|
ipv4_address: 172.172.172.60
|
|
ports:
|
|
- 5005:5005
|
|
- 8082:8082
|
|
- 8282:8282
|
|
privileged: true
|
|
volumes:
|
|
- ${HOME}/shared:/shared
|
|
- ./service-supervisords/druid.conf:/usr/lib/druid/conf/druid.conf
|
|
env_file:
|
|
- ./environment-configs/common
|
|
- ./environment-configs/broker
|
|
|
|
### routers
|
|
druid-router:
|
|
image: druid/cluster
|
|
container_name: druid-router
|
|
hostname: druid-router
|
|
networks:
|
|
druid-it-net:
|
|
ipv4_address: 172.172.172.70
|
|
ports:
|
|
- 5004:5004
|
|
- 8888:8888
|
|
- 9088:9088
|
|
privileged: true
|
|
volumes:
|
|
- ${HOME}/shared:/shared
|
|
- ./service-supervisords/druid.conf:/usr/lib/druid/conf/druid.conf
|
|
env_file:
|
|
- ./environment-configs/common
|
|
- ./environment-configs/router
|
|
|
|
druid-router-permissive-tls:
|
|
image: druid/cluster
|
|
container_name: druid-router-permissive-tls
|
|
networks:
|
|
druid-it-net:
|
|
ipv4_address: 172.172.172.71
|
|
ports:
|
|
- 5001:5001
|
|
- 8889:8889
|
|
- 9089:9089
|
|
privileged: true
|
|
volumes:
|
|
- ${HOME}/shared:/shared
|
|
- ./service-supervisords/druid.conf:/usr/lib/druid/conf/druid.conf
|
|
env_file:
|
|
- ./environment-configs/common
|
|
- ./environment-configs/router-permissive-tls
|
|
|
|
druid-router-no-client-auth-tls:
|
|
image: druid/cluster
|
|
container_name: druid-router-no-client-auth-tls
|
|
networks:
|
|
druid-it-net:
|
|
ipv4_address: 172.172.172.72
|
|
ports:
|
|
- 5002:5002
|
|
- 8890:8890
|
|
- 9090:9090
|
|
privileged: true
|
|
volumes:
|
|
- ${HOME}/shared:/shared
|
|
- ./service-supervisords/druid.conf:/usr/lib/druid/conf/druid.conf
|
|
env_file:
|
|
- ./environment-configs/common
|
|
- ./environment-configs/router-no-client-auth-tls
|
|
|
|
druid-router-custom-check-tls:
|
|
image: druid/cluster
|
|
container_name: druid-router-custom-check-tls
|
|
networks:
|
|
druid-it-net:
|
|
ipv4_address: 172.172.172.73
|
|
ports:
|
|
- 5003:5003
|
|
- 8891:8891
|
|
- 9091:9091
|
|
privileged: true
|
|
volumes:
|
|
- ${HOME}/shared:/shared
|
|
- ./service-supervisords/druid.conf:/usr/lib/druid/conf/druid.conf
|
|
env_file:
|
|
- ./environment-configs/common
|
|
- ./environment-configs/router-custom-check-tls
|
|
|
|
### optional supporting infra
|
|
druid-it-hadoop:
|
|
image: druid-it/hadoop:2.8.5
|
|
container_name: druid-it-hadoop
|
|
ports:
|
|
- 2049:2049
|
|
- 2122:2122
|
|
- 8020:8020
|
|
- 8021:8021
|
|
- 8030:8030
|
|
- 8031:8031
|
|
- 8032:8032
|
|
- 8033:8033
|
|
- 8040:8040
|
|
- 8042:8042
|
|
- 8088:8088
|
|
- 8443:8443
|
|
- 9000:9000
|
|
- 10020:10020
|
|
- 19888:19888
|
|
- 34455:34455
|
|
- 50010:50010
|
|
- 50020:50020
|
|
- 50030:50030
|
|
- 50060:50060
|
|
- 50070:50070
|
|
- 50075:50075
|
|
- 50090:50090
|
|
- 51111:51111
|
|
networks:
|
|
druid-it-net:
|
|
ipv4_address: 172.172.172.101
|
|
privileged: true
|
|
volumes:
|
|
- ${HOME}/shared:/shared
|
|
- ./../src/test/resources:/resources
|
|
hostname: "druid-it-hadoop"
|
|
command: "bash -c 'echo Start druid-it-hadoop container... && \
|
|
/etc/bootstrap.sh && \
|
|
tail -f /dev/null'"
|
|
|
|
|
|
druid-openldap:
|
|
image: osixia/openldap:1.4.0
|
|
container_name: druid-openldap
|
|
networks:
|
|
druid-it-net:
|
|
ipv4_address: 172.172.172.102
|
|
ports:
|
|
- 8389:389
|
|
- 8636:636
|
|
privileged: true
|
|
volumes:
|
|
- ./ldap-configs:/container/service/slapd/assets/config/bootstrap/ldif/custom
|
|
- ${HOME}/shared:/shared
|
|
env_file:
|
|
- ./environment-configs/common
|
|
command: --copy-service
|
|
|
|
|
|
schema-registry:
|
|
image: confluentinc/cp-schema-registry:5.5.1
|
|
container_name: schema-registry
|
|
ports:
|
|
- 8085:8085
|
|
networks:
|
|
druid-it-net:
|
|
ipv4_address: 172.172.172.103
|
|
volumes:
|
|
- ${HOME}/shared:/shared
|
|
- ./schema-registry/jaas_config.file:/usr/lib/druid/conf/jaas_config.file
|
|
- ./schema-registry/password-file:/usr/lib/druid/conf/password-file
|
|
privileged: true
|
|
environment:
|
|
SCHEMA_REGISTRY_HOST_NAME: schema-registry
|
|
SCHEMA_REGISTRY_LISTENERS: "http://0.0.0.0:8085"
|
|
SCHEMA_REGISTRY_KAFKASTORE_BOOTSTRAP_SERVERS: druid-zookeeper-kafka:9092
|
|
SCHEMA_REGISTRY_AUTHENTICATION_METHOD: BASIC
|
|
SCHEMA_REGISTRY_AUTHENTICATION_REALM: druid
|
|
SCHEMA_REGISTRY_AUTHENTICATION_ROLES: users
|
|
SCHEMA_REGISTRY_OPTS: -Djava.security.auth.login.config=/usr/lib/druid/conf/jaas_config.file -Xmx32m
|