-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathdocker-compose.yml
116 lines (107 loc) · 3.28 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
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
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
x-superset-image: &superset-image .
x-superset-user: &superset-user root
x-superset-depends-on: &superset-depends-on
- db
- redis
x-superset-volumes: &superset-volumes
- ./docker:/app/docker
- ./superset_home:/app/superset_home
- asset-volume:/app/superset/static
version: "3.7"
services:
redis:
image: redis:latest
container_name: superset_cache
restart: unless-stopped
volumes:
- redis:/data
db:
env_file: docker/.env-non-dev
image: postgres:14
container_name: superset_db
restart: unless-stopped
volumes:
- db_home:/var/lib/postgresql/data
nginx:
image: nginx:1.23
container_name: superset_nginx
restart: unless-stopped
ports:
- 8088:80
- 443:443
- 80:80
user: *superset-user
depends_on: *superset-depends-on
volumes:
- asset-volume:/app/superset/static:ro
- ./docker/nginx_conf/superset.conf:/etc/nginx/conf.d/default.conf:ro
- ./docker/certbot/www/:/var/www/certbot/:ro
- ./docker/certbot/conf/:/etc/nginx/ssl/:ro
certbot:
image: certbot/certbot:latest
container_name: superset_certbot
volumes:
- ./docker/certbot/www/:/var/www/certbot/:rw
- ./docker/certbot/conf/:/etc/letsencrypt/:rw
superset:
env_file: docker/.env-non-dev
build: *superset-image
container_name: superset_app
command: ["/app/docker/docker-bootstrap.sh", "app-gunicorn"]
restart: unless-stopped
user: *superset-user
depends_on: *superset-depends-on
volumes: *superset-volumes
superset-init:
build: *superset-image
container_name: superset_init
command: ["/app/docker/docker-init.sh"]
env_file: docker/.env-non-dev
depends_on: *superset-depends-on
user: *superset-user
volumes: *superset-volumes
healthcheck:
disable: true
superset-worker:
build: *superset-image
container_name: superset_worker
command: ["/app/docker/docker-bootstrap.sh", "worker"]
env_file: docker/.env-non-dev
restart: unless-stopped
depends_on: *superset-depends-on
user: "root"
volumes: *superset-volumes
healthcheck:
test: ["CMD-SHELL", "celery inspect ping -A superset.tasks.celery_app:app -d celery@$$HOSTNAME"]
trino:
image: trinodb/trino:406
container_name: trino
restart: unless-stopped
ports:
- 8080:8080
volumes:
- ./docker/mongodb.properties:/etc/trino/catalog/mongodb.properties
volumes:
superset_home:
external: false
db_home:
external: false
redis:
external: false
asset-volume: