-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy path.env.example
180 lines (150 loc) · 5.03 KB
/
.env.example
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
171
172
173
174
175
176
177
178
179
180
#-------------------------------
# Environment Variables for Data platform
#-------------------------------
# ------------------------------
# Common Variables
# ------------------------------
# Datalake s3 bucket name
DATALAKE_BUCKET=delta
WAREHOUSE_DIR=s3://$DATALAKE_BUCKET/
# ------------------------------
# Minio configuration
# This Minio configuration is used for storage layer
# ------------------------------
# Access key and secret key for Minio, like AWS S3
# Use access key and secret key to login to Minio and to access Minio storage from other services like Spark, Hive, etc.
MINIO_ACCESS_KEY=minio_access_key
MINIO_SECRET_KEY=minio_secret_key
MINIO_ENDPOINT=http://minio:9000 # or http://localhost:9000
# Minio browser redirect URL, suitable for production environment with real domain like https://minio.yourdomain.com
MINIO_BROWSER_REDIRECT_URL=http://localhost:9000
MINIO_API_PORT=9000
MINIO_CONSOLE_PORT=9001
MINIO_SSL_ENABLED=false
# ------------------------------
# Database configuration
# The database uses PostgreSQL
# In this project we have:
# (1) a database serves as a operational database storing AdventureWorks2014 data
# (2) a database serves as a metadata database storing metadata of the data platform, used by services like Airflow, Hive, etc.
# ------------------------------
# Metadata database
META_DB_USER=hive
META_DB_PASSWORD=hive
META_DB_NAME=metastore
META_DB_DRIVER=org.postgresql.Driver
META_DB_URL=jdbc:postgresql://metastore_db:5432/$META_DB_NAME # or jdbc:postgresql://localhost:5432/$META_DB_NAME
META_DB_PORT_EXPOSE=5433
# Operational database
OLTP_DB_USER=adventureworks
OLTP_DB_PASSWORD=adventureworks
OLTP_DB_NAME=adventureworks
OLTP_DB_PORT_EXPOSE=6543
OLTP_DB_HOST=oltp
OLTP_DB_PORT=5432
# ------------------------------
# Hive metastore configuration
# This Hive metastore configuration is used for Hive service
# ------------------------------
HIVE_METASTORE_PORT_EXPOSE=9083
HIVE_METASTORE_URI=thrift://hive-metastore:9083
# ------------------------------
# Spark configuration
# This Spark configuration is used for Spark cluster
# ------------------------------
# Spark master configuration
SPARK_MASTER_PORT_EXPOSE=7077
SPARK_MASTER_WEBUI_PORT_EXPOSE=8081
# Spark worker configuration
SPARK_WORKER_CORES=1
SPARK_WORKER_MEMORY=1g
SPARK_MASTER_URL=spark://spark-master:7077
SPARK_WORKER_IP_RANGE=8091-8100
# ------------------------------
# Trino configuration
# This Trino configuration is used for Trino cluster
# ------------------------------
TRINO_PORT_EXPOSE=8090
# ------------------------------
# Lightdash configuration
# This Lightdash configuration is used for Lightdash service
# ------------------------------
# Lightdash postgres database
LD_PGHOST=lightdash-db
LD_PGPORT=5432
LD_PGUSER=lightdash
LD_PGPASSWORD=lightdash
LD_PGDATABASE=lightdash
# Lightdash service
SECURE_COOKIES=true
COOKIES_MAX_AGE_HOURS=12
TRUST_PROXY=true
LIGHTDASH_SECRET="random_secret"
LD_PORT_EXPOSE=8070
SITE_URL=http://localhost:3000
NODE_ENV=production
LIGHTDASH_LOG_LEVEL=debug
LIGHTDASH_QUERY_MAX_LIMIT=50000
ALLOW_MULTIPLE_ORGS=false
DBT_PROJECT_DIR=../dbt
SCHEDULER_ENABLED=true
LIGHTDASH_MAX_PAYLOAD=15mb
LIGHTDASH_CSP_REPORT_ONLY=false
#AUTH_DISABLE_PASSWORD_AUTHENTICATION=
#AUTH_GOOGLE_OAUTH2_CLIENT_ID=
#AUTH_GOOGLE_OAUTH2_CLIENT_SECRET=
# Lightdash SMTP
# EMAIL_SMTP_HOST=
# EMAIL_SMTP_PORT=
# EMAIL_SMTP_SECURE=
# EMAIL_SMTP_USER=
# EMAIL_SMTP_PASSWORD=
# EMAIL_SMTP_ACCESS_TOKEN=
#EMAIL_SMTP_ALLOW_INVALID_CERT=
# EMAIL_SMTP_SENDER_NAME=
# EMAIL_SMTP_SENDER_EMAIL=
# Lightdash Slack
# SLACK_CLIENT_ID="00000000000.000000000000"
# SLACK_CLIENT_SECRET=
# SLACK_SIGNING_SECRET=
# SLACK_STATE_SECRET="random_secret"
# ------------------------------
# Nginx configuration
# This Nginx configuration is used for reverse proxy
# ------------------------------
NGINX_SERVER_NAME=trino-coordinator.domain.name
NGINX_HTTPS_ENABLED=false
# HTTP port
NGINX_PORT=80
# SSL settings are only applied when NGINX_HTTPS_ENABLED is true
NGINX_SSL_PORT=443
# if NGINX_HTTPS_ENABLED is true, SSL certificates/keys must be placed in `./nginx/ssl` directory
# and modify the env vars below accordingly
NGINX_SSL_CERT_FILENAME=fullchain.pem
NGINX_SSL_CERT_KEY_FILENAME=privkey.pem
NGINX_SSL_PROTOCOLS="TLSv1.1 TLSv1.2 TLSv1.3"
# Nginx performance tuning
NGINX_WORKER_PROCESSES=auto
NGINX_CLIENT_MAX_BODY_SIZE=15M
NGINX_KEEPALIVE_TIMEOUT=65
# Proxy setting
NGINX_PROXY_READ_TIMEOUT=3600s
NGINX_PROXY_SEND_TIMEOUT=3600s
# Set true to accept requests for /.well-know/acme-challenge/
NGINX_ENABLE_CERTBOT_CHALLENGE=false
# ------------------------------
# Cerbot configuration
# This Cerbot configuration is used for SSL certificate
# ------------------------------
# Email address (required to get certificates from Let's Encrypt)
CERTBOT_EMAIL=mail@domain.name
# Domain name
CERTBOT_DOMAIN=trino-coordinator.domain.name
# cerbot command options
# i.e: --force-renewal --dry-run --test-cert --debug
CERTBOT_OPTIONS=""
# ------------------------------
# Docker Compose Service Expose Host Port Configurations
# ------------------------------
EXPOSE_NGINX_PORT=80
EXPOSE_NGINX_SSL_PORT=443