blob: 4e31d88a47fa6295a75d69caac0ea217342d9eae [file] [log] [blame]
version: "3.9"
services:
spark-master:
build:
context: .
dockerfile: Dockerfile # Dockerfile creates /home/onetable dir and gives permissions to user
environment:
- SPARK_MODE=master
- SPARK_MASTER_PORT=7077
ports:
- "18080:18080" # Spark master web UI port
- "7077:7077" # Spark master port
volumes:
- ./jars/utilities-0.1.0-SNAPSHOT-bundled.jar:/home/onetable/utilities/target/utilities-0.1.0-SNAPSHOT-bundled.jar
spark-worker-1:
image: bitnami/spark:3.2.4
environment:
- SPARK_MODE=worker
- SPARK_MASTER_URL=spark://spark-master:7077
depends_on:
- spark-master
spark-worker-2:
image: bitnami/spark:3.2.4
environment:
- SPARK_MODE=worker
- SPARK_MASTER_URL=spark://spark-master:7077
depends_on:
- spark-master
hive-metastore:
container_name: hive-metastore
hostname: hive-metastore
image: 'apache/hive:4.0.0-alpha-2'
ports:
- '9083:9083' # Metastore Thrift
environment:
SERVICE_NAME: metastore
HIVE_METASTORE_WAREHOUSE_DIR: /home/data
volumes:
- ./data:/home/data
trino:
container_name: trino
ports:
- '8080:8080'
image: 'trinodb/trino:428'
volumes:
- ./trino/catalog:/etc/trino/catalog
- ./data:/home/data
presto:
container_name: presto
ports:
- '8082:8082'
image: 'prestodb/presto:0.283'
volumes:
- ./presto/catalog:/opt/presto-server/etc/catalog
- ./presto/config.properties:/opt/presto-server/etc/config.properties
- ./presto/jvm.config:/opt/presto-server/etc/jvm.config
- ./presto/node.properties:/opt/presto-server/etc/node.properties
- ./data:/home/data
jupyter:
container_name: jupyter
hostname: jupyter
image: 'almondsh/almond:latest'
ports:
- '8888:8888'
volumes:
- ./notebook:/home/jovyan/work
- ./jars:/home/jars
- ./data:/home/data