-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdocker-compose.yml
85 lines (84 loc) · 2.55 KB
/
docker-compose.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
version: "3"
services:
# Nessie Catalog Server Using ROCKSDB Store
nessie:
image: ghcr.io/projectnessie/nessie:0.100.3
container_name: nessie
environment:
- QUARKUS_PROFILE=prod
- QUARKUS_HTTP_PORT=19120
- nessie.version.store.type=ROCKSDB
# This example uses MinIO as the object store.
- nessie.catalog.default-warehouse=warehouse
- nessie.catalog.warehouses.warehouse.location=s3://datalakehouse/
- nessie.catalog.service.s3.default-options.region=us-east-1
- nessie.catalog.service.s3.default-options.path-style-access=true
- nessie.catalog.service.s3.default-options.access-key=urn:nessie-secret:quarkus:nessie.catalog.secrets.access-key
- nessie.catalog.secrets.access-key.name=admin
- nessie.catalog.secrets.access-key.secret=password
# MinIO endpoint for Nessie server
- nessie.catalog.service.s3.default-options.endpoint=http://minio:9000/
- nessie.server.authentication.enabled=false
volumes:
- ./nessie:/tmp/nessie-rocksdb-store # Mount local directory to persist RocksDB data
ports:
- 19120:19120 # Expose Nessie API port
networks:
iceberg-network:
# Minio Storage Server
minio:
image: minio/minio:RELEASE.2024-11-07T00-52-20Z
container_name: minio
environment:
- MINIO_ROOT_USER=admin
- MINIO_ROOT_PASSWORD=password
- MINIO_DOMAIN=storage
- MINIO_REGION_NAME=us-east-1
- MINIO_REGION=us-east-1
networks:
iceberg-network:
ports:
- 9001:9001
- 9000:9000
volumes:
- ./minio/data:/data
entrypoint: >
/bin/sh -c "
minio server /data --console-address ':9001' &
sleep 5;
mc alias set myminio http://localhost:9000 admin password;
mc mb myminio/datalakehouse;
tail -f /dev/null"
# Dremio
dremio:
platform: linux/x86_64
image: dremio/dremio-oss:25.2
ports:
- 9047:9047
- 31010:31010
- 32010:32010
container_name: dremio
environment:
- DREMIO_JAVA_SERVER_EXTRA_OPTS=-Dpaths.dist=file:///opt/dremio/data/dist
networks:
iceberg-network:
volumes:
- ./dremio/data:/opt/dremio/data
- ./dremio/lib:/var/lib/dremio
- ./dremio/local:/localFiles
# Trino
trino:
image: trinodb/trino:466
container_name: trino
ports:
- "8080:8080"
volumes:
- ./trino/iceberg.properties:/etc/trino/catalog/iceberg.properties
- ./sql/trino:/etc/trino/sql
networks:
iceberg-network:
depends_on:
- minio
- nessie
networks:
iceberg-network: