liveBook · Manning

Docker Compose

As explained in Architecting an Apache Iceberg Lakehouse

Docker Compose is a tool for defining and running multi-container applications from a declarative configuration file.

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

How Architecting an Apache Iceberg Lakehouse covers it

How deep it goes
Defines images, containers, networks, ports, credentials, and startup commands, then verifies runtime status without detailing production deployment.
Examples
Uses a docker-compose.yml file, six service containers, mapped ports, a shared network, and docker ps verification.
What it assumes
Assumes familiarity with local containers and lakehouse roles while teaching the service configuration and integration path.
What you can do after
Operate/configure a local lakehouse whose services ingest, catalog, store, query, and visualize Iceberg data.
How it connects
Connects Apache Iceberg with Nessie, MinIO, Apache Spark, Dremio, Apache Superset, and PostgreSQL.

Also explained in

Compare how 15 books explain Docker Compose →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Architecting an Apache Iceberg Lakehouse. The section links point to the parts of the book it draws on.