Docker Compose defines and runs a local multi-container lakehouse from one configuration file, connecting storage, catalogs, processing, querying, databases, and dashboards. section 3.2 section 3.2.2
A Compose environment assigns separate containers to distinct lakehouse responsibilities:
- Nessie tracks Iceberg tables as the catalog. section 3.2
- MinIO stores Iceberg data and metadata files through an S3-compatible interface. section 3.2.2
- Spark ingests and transforms data, while Dremio queries the lakehouse and Superset provides dashboards. section 3.2.3
- PostgreSQL supplies the operational source data. section 3.2
Start and verify the environment
Run docker-compose up -d from the directory containing docker-compose.yml, then run docker ps to confirm that the Nessie, MinIO, Dremio, Spark, PostgreSQL, and Superset containers are running. section 3.2.3
version: "3" #1
services: #2
nessie: #3
image: projectnessie/nessie:latest
container_name: nessie
networks:
lakehouse-net:
ports:
- 19120:19120
Inspect the Compose listing to see how services, images, networks, and ports are declared. section 3.2.2














