-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathredash.yml
171 lines (160 loc) · 4.78 KB
/
redash.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
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
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
version: "3.3"
services:
redash:
# 選用此版本的 redash image
image: redash/redash:10.1.0.b50633
# depends 代表依賴關係
# 需要等 postgres、redis 先架設完成
# 才會開始架設 redash services
depends_on:
- postgres
- redis
restart: always
# redash 啟動 server 指令
command: server
ports:
- target: 5000
published: 5000
mode: host
# 相關的環境變數,包含
environment:
PYTHONUNBUFFERED: 0
# log 等級
REDASH_LOG_LEVEL: INFO
# redis 的連線設定
REDASH_REDIS_URL: redis://redis:6379/0
# postgres 的密碼
POSTGRES_PASSWORD: postgres_password
REDASH_COOKIE_SECRET: redash_cookie_secret
REDASH_SECRET_KEY: redash_secret_key
# postgres 的連線設定
REDASH_DATABASE_URL: postgresql://postgres:postgres_password@postgres/postgres
# 允許在 redash 上使用 python
REDASH_ADDITIONAL_QUERY_RUNNERS: redash.query_runner.python
# worker 數量
# 這是做範例,設定 1,
# 未來可根據需求自行增加
REDASH_WEB_WORKERS: 3
networks:
- finmind_network
create_table:
# 相關設定與 redash services 相同
# 也用相同的 image
image: redash/redash:10.1.0.b50633
depends_on:
- postgres
- redis
command: python /app/manage.py database create_tables
environment:
PYTHONUNBUFFERED: 0
REDASH_LOG_LEVEL: INFO
REDASH_REDIS_URL: redis://redis:6379/0
POSTGRES_PASSWORD: postgres_password
REDASH_COOKIE_SECRET: redash_cookie_secret
REDASH_SECRET_KEY: redash_secret_key
REDASH_DATABASE_URL: postgresql://postgres:postgres_password@postgres/postgres
REDASH_ADDITIONAL_QUERY_RUNNERS: redash.query_runner.python
REDASH_WEB_WORKERS: 1
networks:
- finmind_network
scheduler:
# 用於 redash 相關的 scheduler 排程
image: redash/redash:10.1.0.b50633
depends_on:
- postgres
- redis
restart: always
command: scheduler
environment:
PYTHONUNBUFFERED: 0
REDASH_LOG_LEVEL: INFO
REDASH_REDIS_URL: redis://redis:6379/0
POSTGRES_PASSWORD: postgres_password
REDASH_COOKIE_SECRET: redash_cookie_secret
REDASH_SECRET_KEY: redash_secret_key
REDASH_DATABASE_URL: postgresql://postgres:postgres_password@postgres/postgres
REDASH_ADDITIONAL_QUERY_RUNNERS: redash.query_runner.python
QUEUES: "celery"
WORKERS_COUNT: 3
networks:
- finmind_network
scheduled_worker:
# 分散式中的 worker
image: redash/redash:10.1.0.b50633
depends_on:
- postgres
- redis
restart: always
command: worker
environment:
PYTHONUNBUFFERED: 0
REDASH_LOG_LEVEL: INFO
REDASH_REDIS_URL: redis://redis:6379/0
POSTGRES_PASSWORD: postgres_password
REDASH_COOKIE_SECRET: redash_cookie_secret
REDASH_SECRET_KEY: redash_secret_key
REDASH_DATABASE_URL: postgresql://postgres:postgres_password@postgres/postgres
REDASH_ADDITIONAL_QUERY_RUNNERS: redash.query_runner.python
QUEUES: "scheduled_queries,schemas"
WORKERS_COUNT: 3
networks:
- finmind_network
adhoc_worker:
image: redash/redash:10.1.0.b50633
depends_on:
- postgres
- redis
restart: always
command: worker
environment:
PYTHONUNBUFFERED: 0
REDASH_LOG_LEVEL: INFO
REDASH_REDIS_URL: redis://redis:6379/0
POSTGRES_PASSWORD: postgres_password
REDASH_COOKIE_SECRET: redash_cookie_secret
REDASH_SECRET_KEY: redash_secret_key
REDASH_DATABASE_URL: postgresql://postgres:postgres_password@postgres/postgres
REDASH_ADDITIONAL_QUERY_RUNNERS: redash.query_runner.python
QUEUES: "queries"
WORKERS_COUNT: 3
networks:
- finmind_network
redis:
# redis 資料庫
image: redis:5.0
restart: always
volumes:
- redis-redash:/bitnami/redis/data
networks:
- finmind_network
postgres:
# postgres 資料庫
image: postgres:9.6-alpine
environment:
PYTHONUNBUFFERED: 0
REDASH_LOG_LEVEL: INFO
REDASH_REDIS_URL: redis://redis:6379/0
POSTGRES_PASSWORD: postgres_password
REDASH_COOKIE_SECRET: redash_cookie_secret
REDASH_SECRET_KEY: redash_secret_key
REDASH_DATABASE_URL: postgresql://postgres:postgres_password@postgres/postgres
REDASH_ADDITIONAL_QUERY_RUNNERS: redash.query_runner.python
volumes:
- postgres:/var/lib/postgresql/data
restart: always
networks:
- finmind_network
nginx:
# 網頁伺服器
image: redash/nginx:latest
depends_on:
- redash
restart: always
networks:
- finmind_network
networks:
finmind_network:
external: true
volumes:
postgres:
redis-redash: