-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathdocker-compose.yaml
147 lines (134 loc) · 3.65 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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
version: '2'
services:
namenode:
image: hadoop-3:latest
container_name: namenode
networks:
- hadoop
ports:
- 9870:9870 # hdfs namenode ui
command: ./entrypoint.sh namenode
restart: unless-stopped
volumes:
- ./hadoop/etc/hadoop/hdfs-site.xml:/opt/hadoop/etc/hadoop/hdfs-site.xml
- ./hadoop/entrypoint.sh:/opt/hadoop/entrypoint.sh
datanode:
image: hadoop-3:latest
container_name: datanode
depends_on:
- namenode
networks:
- hadoop
command: ./entrypoint.sh datanode
restart: unless-stopped
volumes:
- ./hadoop/etc/hadoop/hdfs-site.xml:/templates/hdfs-site.xml
- ./hadoop/entrypoint.sh:/opt/hadoop/entrypoint.sh
resourcemanager:
image: hadoop-3:latest
container_name: resourcemanager
depends_on:
- datanode
- namenode
ports:
- 8088:8088 # yarn resourcemanager ui
networks:
- hadoop
command: ./entrypoint.sh resourcemanager
restart: unless-stopped
volumes:
- ./hadoop/etc/hadoop/yarn-site.xml:/opt/hadoop/etc/hadoop/yarn-site.xml
- ./hadoop/entrypoint.sh:/opt/hadoop/entrypoint.sh
nodemanager:
image: hadoop-3:latest
container_name: nodemanager
depends_on:
- resourcemanager
networks:
- hadoop
# ports:
# - 8042:8042 # yarn nodemanager ui
command: ./entrypoint.sh nodemanager
restart: unless-stopped
volumes:
- ./hadoop/etc/hadoop/yarn-site.xml:/opt/hadoop/etc/hadoop/yarn-site.xml
- ./hadoop/entrypoint.sh:/opt/hadoop/entrypoint.sh
spark:
image: hadoop-3:latest
container_name: spark
depends_on:
- resourcemanager
- namenode
- datanode
ports: # only if use SPARK own resource manager
- 8081:8081 # spark worker ui
- 8080:8080 # spark master ui
- 8998:8998 # livy localhost:8998/ui
networks:
- hadoop
command: ./entrypoint.sh spark rdd/count_lines.py
restart: unless-stopped
volumes:
- ./data/world-cups/:/data/
- ./hadoop/etc/hadoop/yarn-site.xml:/opt/hadoop/etc/hadoop/yarn-site.xml
- ./hadoop/livy/livy.conf:/opt/livy/conf/livy.conf
- ./spark/conf/spark-defaults.conf:/opt/spark/conf/spark-defaults.conf
- ./pyspark-examples/:/pyspark-examples/
- ./hadoop/entrypoint.sh:/opt/hadoop/entrypoint.sh
solr:
image: solr:8-slim
ports:
- 8983:8983
networks:
- hadoop
hive:
image: hadoop-3:latest
container_name: hive
depends_on:
- resourcemanager
- namenode
- datanode
ports:
- 10002:10002
networks:
- hadoop
command: ./entrypoint.sh hive
volumes:
- ./hadoop/entrypoint.sh:/opt/hadoop/entrypoint.sh
#################################################
# hue section below
#################################################
# if fail, enter in cointainer and run -> ./build/env/bin/hue migrate
hue: # see https://github.com/cloudera/hue/tree/master/tools/docker
image: gethue/hue:4.4.0
container_name: hue
depends_on:
- hive
ports:
- 8888:8888
networks:
- hadoop
restart: unless-stopped
depends_on:
- huedb
volumes:
- ./hue/hue.ini:/usr/share/hue/desktop/conf/hue.ini
- ./hue/entrypoint.sh:/usr/share/hue/entrypoint.sh
- ./volumes/hue:/volumes/hue
huedb:
image: mysql:8
command: --default-authentication-plugin=mysql_native_password
ports:
- 3306:3306
networks:
- hadoop
restart: unless-stopped
environment:
MYSQL_ROOT_PASSWORD: pass
MYSQL_DATABASE: hue
volumes:
- huedb-datavolume:/var/lib/mysql
networks:
hadoop:
volumes:
huedb-datavolume: