--- services: spark-lance: image: spark-lance:latest container_name: spark-lance build: context: .. dockerfile: docker/Dockerfile networks: lance_net: depends_on: - minio volumes: - ./warehouse:/home/lance/warehouse - ./notebooks:/home/lance/notebooks - ../benchmark/target:/home/lance/benchmark - ../benchmark/data:/home/lance/data - ../benchmark/results:/home/lance/results environment: - AWS_ACCESS_KEY_ID=admin - AWS_SECRET_ACCESS_KEY=password - AWS_REGION=us-east-1 ports: - 8888:8888 # Jupyter Notebook - 8080:8080 # Spark Master Web UI - 7077:7077 # Spark Master Port - 18080:18080 # Spark History Server - 10000:10000 # Thrift JDBC/ODBC Server - 10001:10001 # Thrift JDBC/ODBC Server HTTP minio: image: minio/minio container_name: minio environment: - MINIO_ROOT_USER=admin - MINIO_ROOT_PASSWORD=password - MINIO_DOMAIN=minio networks: lance_net: aliases: - warehouse.minio ports: - 9001:9001 # MinIO Console - 9000:9000 # MinIO API command: ["server", "/data", "--console-address", ":9001"] mc: depends_on: - minio image: minio/mc container_name: mc networks: lance_net: environment: - AWS_ACCESS_KEY_ID=admin - AWS_SECRET_ACCESS_KEY=password - AWS_REGION=us-east-1 entrypoint: > /bin/sh -c " until (/usr/bin/mc alias set minio http://minio:9000 admin password) do echo '...waiting...' && sleep 1; done; /usr/bin/mc rm -r --force minio/lance-warehouse; /usr/bin/mc mb minio/lance-warehouse; /usr/bin/mc anonymous set public minio/lance-warehouse; tail -f /dev/null " networks: lance_net: