-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdocker-compose.yaml
64 lines (61 loc) · 1.72 KB
/
docker-compose.yaml
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
version: '5'
services:
spark-master:
build: spark
container_name: spark-master
hostname: spark-master
ports:
- "8080:8080"
environment:
- SPARK_MASTER_HOST=spark-master
volumes:
- spark-binaries:/opt/bitnami/spark
spark-worker1:
build: spark
container_name: spark-worker1
hostname: spark-worker1
ports:
- 8082:8082
links:
- spark-master
depends_on:
- spark-master
environment:
SPARK_MODE: worker
SPARK_WORKER_WEBUI_PORT: 8082
SPARK_WORKER_PORT: 8083
zeppelin:
build:
context: zeppelin
dockerfile: Dockerfile # Use this line if want to build from scratch
# dockerfile: Dockerfile_hub # Use this line if you want to use the pre-built image from Docker Hub
container_name: zeppelin
hostname: zeppelin.local # You can change it into "zeppelin.local" and add into /etc/hosts
ports:
- "9999:8080"
links:
- spark-master
depends_on:
- spark-master
environment:
SPARK_HOME: /opt/bitnami/spark
ZEPPELIN_LOG_DIR: /opt/zeppelin/logs
ZEPPELIN_NOTEBOOK_DIR: /opt/zeppelin/notebook
volumes:
- spark-binaries:/opt/bitnami/spark
- ./notebook:/opt/zeppelin/notebook # notebook folder in main project : path in docker
- "./data:/data" # put any data like CSV, Parquet, etc. in this folder and access it via /data/... in Zeppelin
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:9999"]
interval: 10s
timeout: 5s
retries: 3
deploy:
resources:
reservations:
devices:
- driver: nvidia
device_ids: ['0']
capabilities: [gpu]
volumes:
spark-binaries: