113 lines
3.4 KiB
YAML
113 lines
3.4 KiB
YAML
version: "3.6"
|
|
volumes:
|
|
shared-workspace:
|
|
name: "hadoop-distributed-file-system"
|
|
driver: local
|
|
services:
|
|
jupyterlab:
|
|
image: jupyterlab
|
|
container_name: jupyterlab
|
|
ports:
|
|
- 8888:8888
|
|
volumes:
|
|
- shared-workspace:/opt/workspace
|
|
spark-master:
|
|
image: spark-master
|
|
container_name: spark-master
|
|
environment:
|
|
SPARK_LOCAL_IP: 'spark-master'
|
|
ports:
|
|
- 8080:8080
|
|
- 7077:7077
|
|
volumes:
|
|
- shared-workspace:/opt/workspace
|
|
spark-worker-1:
|
|
image: spark-worker
|
|
container_name: spark-worker-1
|
|
environment:
|
|
- SPARK_WORKER_CORES=1
|
|
- SPARK_WORKER_MEMORY=4g
|
|
ports:
|
|
- 8083:8081
|
|
volumes:
|
|
- shared-workspace:/opt/workspace
|
|
depends_on:
|
|
- spark-master
|
|
spark-worker-2:
|
|
image: spark-worker
|
|
container_name: spark-worker-2
|
|
environment:
|
|
- SPARK_WORKER_CORES=1
|
|
- SPARK_WORKER_MEMORY=4g
|
|
ports:
|
|
- 8082:8081
|
|
volumes:
|
|
- shared-workspace:/opt/workspace
|
|
depends_on:
|
|
- spark-master
|
|
|
|
broker:
|
|
image: confluentinc/cp-kafka:7.2.0
|
|
hostname: broker
|
|
container_name: broker
|
|
depends_on:
|
|
- zookeeper
|
|
ports:
|
|
- '9092:9092'
|
|
environment:
|
|
KAFKA_BROKER_ID: 1
|
|
KAFKA_ZOOKEEPER_CONNECT: 'zookeeper:2181'
|
|
# KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT
|
|
# KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://broker:9092,PLAINTEXT_HOST://localhost:9092
|
|
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: LISTENER_BOB:PLAINTEXT,LISTENER_FRED:PLAINTEXT
|
|
KAFKA_LISTENERS: LISTENER_BOB://broker:29092,LISTENER_FRED://broker:9092
|
|
KAFKA_ADVERTISED_LISTENERS: LISTENER_BOB://broker:29092,LISTENER_FRED://localhost:9092
|
|
KAFKA_INTER_BROKER_LISTENER_NAME: LISTENER_BOB
|
|
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
|
|
KAFKA_GROUP_INITIAL_REBALANCE_DELAY_MS: 0
|
|
KAFKA_TRANSACTION_STATE_LOG_MIN_ISR: 1
|
|
KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR: 1
|
|
schema-registry:
|
|
image: confluentinc/cp-schema-registry:7.2.0
|
|
hostname: schema-registry
|
|
container_name: schema-registry
|
|
depends_on:
|
|
- zookeeper
|
|
- broker
|
|
ports:
|
|
- "8081:8081"
|
|
environment:
|
|
# SCHEMA_REGISTRY_HOST_NAME: schema-registry # used for intercommunication
|
|
# SCHEMA_REGISTRY_KAFKASTORE_CONNECTION_URL: "zookeeper:2181" #(depreciated)
|
|
SCHEMA_REGISTRY_KAFKASTORE_BOOTSTRAP_SERVERS: "broker:29092"
|
|
SCHEMA_REGISTRY_HOST_NAME: "localhost"
|
|
SCHEMA_REGISTRY_LISTENERS: "http://0.0.0.0:8081" #(default: http://0.0.0.0:8081)
|
|
zookeeper:
|
|
image: confluentinc/cp-zookeeper:7.2.0
|
|
hostname: zookeeper
|
|
container_name: zookeeper
|
|
ports:
|
|
- '2181:2181'
|
|
environment:
|
|
ZOOKEEPER_CLIENT_PORT: 2181
|
|
ZOOKEEPER_TICK_TIME: 2000
|
|
control-center:
|
|
image: confluentinc/cp-enterprise-control-center:7.2.0
|
|
hostname: control-center
|
|
container_name: control-center
|
|
depends_on:
|
|
- zookeeper
|
|
- broker
|
|
- schema-registry
|
|
ports:
|
|
- "9021:9021"
|
|
environment:
|
|
CONTROL_CENTER_BOOTSTRAP_SERVERS: 'broker:29092'
|
|
CONTROL_CENTER_ZOOKEEPER_CONNECT: 'zookeeper:2181'
|
|
CONTROL_CENTER_SCHEMA_REGISTRY_URL: "http://localhost:8081"
|
|
CONTROL_CENTER_REPLICATION_FACTOR: 1
|
|
CONTROL_CENTER_INTERNAL_TOPICS_PARTITIONS: 1
|
|
CONTROL_CENTER_MONITORING_INTERCEPTOR_TOPIC_PARTITIONS: 1
|
|
CONFLUENT_METRICS_TOPIC_REPLICATION: 1
|
|
PORT: 9021
|