-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.env.example.mainnet
198 lines (160 loc) · 9.72 KB
/
.env.example.mainnet
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
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
### GENERAL ###
# Deployment Name and Network
DLT=cardano
NETWORK=mainnet
PROJ_NAME="dandolite-${NETWORK}"
# when having concurrent deployments like mainnet and preprod, use this offset to assign a unique number to each one to avoid network port collisions
PORT_OFFSET=0
#Dandelion Network Information
NODE_NAME="sunflower01"
NODE_TICKER="sun01"
NODE_GROUPS='[]'
NODE_DESCRIPTION="Welcome to '${NODE_NAME}' [${NODE_TICKER}], a Dandelion Lite Node, a ${DLT} ${NETWORK} node with backend APIs and services like ogmios, cardano-graphql, koios, cardano-token-registry, postgrest and unimatrix."
#NODE_EXTENSIONS="cardano_node,cardano_db_sync,cf_ledger_sync,ogmios,postgrest,koios,cardano_sql,pgadmin,swagger"
NODE_EXTENSIONS=""
# Koios RPC database schemas
KOIOS_ARTIFACTS_SCHEMA=koios
KOIOS_LITE_SCHEMA=koios_lite
# Dandelion PostGREST schema
DANDELION_POSTGREST_SCHEMA=dandelion_postgrest
# Cardano Token Registry schema
CARDANO_TOKEN_REGISTRY_SCHEMA=cardano_token_registry
# Cardano SQL database schemas, each one is an API extension which will be accessible using PostgreSQL
CARDANO_SQL_EXTENSIONS="cardano_db_sync,cf_ledger_sync,ogmios,unimatrix,gcfs"
CARDANO_SQL_SCHEMA=cardano_sql
CARDANO_SQL_SCHEMAS="${CARDANO_SQL_SCHEMA},${CARDANO_SQL_EXTENSIONS},${KOIOS_LITE_SCHEMA},${KOIOS_ARTIFACTS_SCHEMA},${DANDELION_POSTGREST_SCHEMA},${CARDANO_TOKEN_REGISTRY_SCHEMA}"
# Directory where to store or restore-from docker volume backup files (with last slash. If empty, default is project directory)
#BACKUP_DIR="/media/${USER}/data/backups/${NETWORK}/"
BACKUP_DIR="/home/${USER}/backups/${NETWORK}/"
### SERVICES ###
# Cardano Node
CARDANO_NODE_VERSION=10.1.2
CARDANO_NODE_IMAGE="cardanocommunity/cardano-node:${CARDANO_NODE_VERSION}"
#CARDANO_NODE_HOME="/opt/cardano/cnode"
CARDANO_NODE_HOME=""
NODE_EXTENSIONS="{\"name\":\"cardano_node\",\"version\":\"${CARDANO_NODE_VERSION}\",\"image\":\"\"}"
# Ogmios
OGMIOS_VERSION=v6.9.0
OGMIOS_IMAGE="cardanosolutions/ogmios:${OGMIOS_VERSION}"
OGMIOS_HOST="cardano-node-ogmios"
OGMIOS_PORT=${PORT_OFFSET}1337
#NODE_EXTENSIONS="${NODE_EXTENSIONS},{\"name\":\"ogmios\",\"path\":\"ogmios/\",\"version\":\"${CARDANO_OGMIOS_VERSION}\",\"image\":\"${CARDANO_OGMIOS_IMAGE}\"}"
#Cardano Node + Ogmios
CARDANO_NODE_OGMIOS_IMAGE=cardanosolutions/cardano-node-ogmios:${OGMIOS_VERSION:-v6.1.0}_${CARDANO_NODE_VERSION:-8.7.3}-${NETWORK}
NODE_EXTENSIONS="${NODE_EXTENSIONS},{\"name\":\"ogmios\",\"path\":\"ogmios/\",\"version\":\"${OGMIOS_VERSION}\",\"image\":\"${OGMIOS_IMAGE}\"}"
INDEX_LINKS="<li><a href=\"ogmios/\">Ogmios</a></li>"
# Cardano DB Sync
CARDANO_DB_SYNC_VERSION=13.6.0.1
CARDANO_DB_SYNC_IMAGE="ghcr.io/intersectmbo/cardano-db-sync:${CARDANO_DB_SYNC_VERSION}"
#CARDANO_DB_SYNC_ARGS="--bootstrap-tx-out --dont-use-ledger --prune-tx-out"
CARDANO_DB_SYNC_ARGS=" --disable-ledger --prune-tx-out"
CARDANO_DB_SYNC_DISABLE_LEDGER=N
#Warning: Broken snapshot URLS cause dbsync failures on container startup
#CARDANO_DB_SYNC_RESTORE_SNAPSHOT="https://update-cardano-mainnet.iohk.io/cardano-db-sync/13.2/db-sync-snapshot-schema-13.2-block-10294231-x86_64.tgz"
NODE_EXTENSIONS="${NODE_EXTENSIONS},{\"name\":\"cardano_db_sync\",\"version\":\"${CARDANO_DB_SYNC_VERSION}\",\"image\":\"${CARDANO_DB_SYNC_IMAGE}\"}"
# Cardano Token Registry
CARDANO_TOKEN_REGISTRY_VERSION=1.0.2
CARDANO_TOKEN_REGISTRY_IMAGE=cardanofoundation/cf-token-metadata-registry-api
CARDANO_TOKEN_REGISTRY_HOSTNAME=cardano-token-registry
CARDANO_TOKEN_REGISTRY_PORT=${PORT_OFFSET}3729
CARDANO_TOKEN_REGISTRY_GITHUB_ORGANIZATION=cardano-foundation
CARDANO_TOKEN_REGISTRY_GITHUB_PROJECT_NAME=cardano-token-registry
CARDANO_TOKEN_REGISTRY_GITHUB_MAPPINGS_FOLDER=mappings
CARDANO_TOKEN_REGISTRY_SYNC_JOB=true
NODE_EXTENSIONS="${NODE_EXTENSIONS},{\"name\":\"cardano_token_registry\",\"path\":\"cardano-token-registry/\",\"version\":\"${CARDANO_TOKEN_REGISTRY_VERSION}\",\"image\":\"${CARDANO_TOKEN_REGISTRY_IMAGE}\"}"
INDEX_LINKS="${INDEX_LINKS}<li><a href=\"cardano-token-registry/\">Cardano Token Registry</a></li>"
# Cardano GraphQL
CARDANO_GRAPHQL_VERSION=8.3.0
CARDANO_GRAPHQL_BACKGROUND_IMAGE=cardanofoundation/cardano-graphql-background:${CARDANO_GRAPHQL_VERSION:-8.0.3}-${NETWORK}
CARDANO_GRAPHQL_SERVER_IMAGE=cardanofoundation/cardano-graphql-server:${CARDANO_GRAPHQL_VERSION:-8.0.3}-${NETWORK}
CARDANO_GRAPHQL_HASURA_IMAGE=cardanofoundation/cardano-graphql-hasura:${CARDANO_GRAPHQL_VERSION:-8.0.3}
CARDANO_GRAPHQL_HASURA_PORT=${PORT_OFFSET}8080
CARDANO_GRAPHQL_SERVER_PORT=${PORT_OFFSET}3100
CARDANO_GRAPHQL_BACKGROUND_LOGGER_MIN_SEVERITY=debug
#On mainnet this official public service can be used but is a worldwide bottleneck: https://tokens.cardano.org
CARDANO_GRAPHQL_BACKGROUND_METADATA_SERVER_URI=http://${CARDANO_TOKEN_REGISTRY_HOSTNAME}:8080
CARDANO_GRAPHQL_BACKGROUND_CHAIN_FOLLOWER_START_SLOT=23068800
CARDANO_GRAPHQL_BACKGROUND_CHAIN_FOLLOWER_START_ID="a650a3f398ba4a9427ec8c293e9f7156d81fd2f7ca849014d8d2c1156c359b3a"
NODE_EXTENSIONS="${NODE_EXTENSIONS},{\"name\":\"cardano_graphql\",\"path\":\"cardano-graphql/\",\"version\":\"${CARDANO_GRAPHQL_VERSION}\",\"image\":\"${CARDANO_GRAPHQL_SERVER_IMAGE}\"}"
INDEX_LINKS="${INDEX_LINKS}<li><a href=\"cardano-graphql\">Cardano GraphQL</a></li>"
# Database-less Cardano Token Registry
DBLESS_CARDANO_TOKEN_REGISTRY_VERSION=1.1
DBLESS_CARDANO_TOKEN_REGISTRY_IMAGE=""
DBLESS_CARDANO_TOKEN_REGISTRY_PORT=${PORT_OFFSET}3042
#NODE_EXTENSIONS="${NODE_EXTENSIONS},{\"name\":\"dbless_cardano_token_registry\",\"path\":\"token-registry/\",\"version\":\"${DBLESS_CARDANO_TOKEN_REGISTRY_VERSION}\",\"image\":\"${DBLESS_CARDANO_TOKEN_REGISTRY_IMAGE}\"}"
#INDEX_LINKS="${INDEX_LINKS}<li><a href=\"token-registry/\">Dandelion Token Registry</a></li>"
# Postgres common data for Koios,Dandelion-PostGREST and cardano-sql
#WARNING: cardano-graphql-hasura needs it as 'postgres'
POSTGRES_HOST=postgres
POSTGRES_PASSWORD=dandelion1234
POSTGRES_USER=dandelion_user
POSTGRES_DB=dandelion_lite
POSTGRES_PORT=${PORT_OFFSET}5432
POSTGRES_ARGS="-c max_connections=200 -c wal_level=minimal -c max_wal_senders=0 -c synchronous_commit=off -c maintenance_work_mem=1024MB -c max_parallel_maintenance_workers=4"
# Koios Artifacts/Koios Lite PostGREST
POSTGREST_HOST=postgrest
POSTGREST_DB_ANON_ROLE=web_anon
#comma separated, first one is default schema, others are accessed by explicitly using the schema name in queries
POSTGREST_DB_SCHEMAS="${KOIOS_ARTIFACTS_SCHEMA},${KOIOS_LITE_SCHEMA}"
POSTGREST_DB_EXTRA_SEARCH_PATH="${POSTGREST_DB_SCHEMAS},public"
POSTGREST_PORT=${PORT_OFFSET}8050
KOIOS_VERSION=1.2.0
KOIOS_IMAGE=""
NODE_EXTENSIONS="${NODE_EXTENSIONS},{\"name\":\"${KOIOS_ARTIFACTS_SCHEMA}\",\"path\":\"koios/\",\"version\":\"${KOIOS_VERSION}\",\"image\":\"${KOIOS_IMAGE}\"}"
INDEX_LINKS="${INDEX_LINKS}<li><a href=\"koios/\">Koios (koios-artifacts)</a></li>"
# Dandelion PostGREST
DANDELION_POSTGREST_HOST=dandelion-postgrest
DANDELION_POSTGREST_DB_ANON_ROLE=${POSTGREST_DB_ANON_ROLE}
#comma separated, first one is default schema, others are accessed by explicitly using the schema name in queries
DANDELION_POSTGREST_DB_SCHEMAS="${DANDELION_POSTGREST_SCHEMA}"
DANDELION_POSTGREST_DB_EXTRA_SEARCH_PATH=${DANDELION_POSTGREST_SCHEMA}
DANDELION_POSTGREST_PORT=${PORT_OFFSET}8060
DANDELION_POSTGREST_VERSION="f814f568b389f13e75230f1d3175210abfddb7e9"
NODE_EXTENSIONS="${NODE_EXTENSIONS},{\"name\":\"${DANDELION_POSTGREST_SCHEMA}\",\"path\":\"postgrest/\",\"version\":\"${DANDELION_POSTGREST_VERSION}\",\"image\":\"\"}"
INDEX_LINKS="${INDEX_LINKS}<li><a href=\"postgrest/\">Dandelion PostGREST</a></li>"
# Cardano SQL PostGREST
CARDANO_SQL_POSTGREST_HOST=cardano-sql-postgrest
CARDANO_SQL_POSTGREST_DB_ANON_ROLE=${POSTGREST_DB_ANON_ROLE}
#comma separated, first one is default schema, others are accessed by explicitly using the schema name in queries
CARDANO_SQL_POSTGREST_DB_SCHEMAS="${CARDANO_SQL_SCHEMAS}"
CARDANO_SQL_POSTGREST_DB_EXTRA_SEARCH_PATH=${CARDANO_SQL_SCHEMAS}
CARDANO_SQL_POSTGREST_PORT=${PORT_OFFSET}8070
#optional NodeJS express server for extended features
CARDANO_SQL_COMPANION_PORT=${PORT_OFFSET}4000
CARDANO_SQL_VERSION=1.0
NODE_EXTENSIONS="${NODE_EXTENSIONS},{\"name\":\"${CARDANO_SQL_SCHEMA}\",\"path\":\"cardano-sql/\",\"version\":\"${CARDANO_SQL_VERSION}\",\"image\":\"\",\"plugins\":\"${CARDANO_SQL_SCHEMAS}\"}"
#INDEX_LINKS="${INDEX_LINKS}<li><a href=\"cardano-sql/\">Cardano SQL</a></li>"
# Unimatrix
UNIMATRIX_VERSION=1.0
UNIMATRIX_PORT=${PORT_OFFSET}8764
NODE_EXTENSIONS="${NODE_EXTENSIONS},{\"name\":\"unimatrix\",\"path\":\"unimatrix/\",\"version\":\"${UNIMATRIX_VERSION}\",\"image\":\"\"}"
#Allow bridging with other nodes to ease multisig operations:
#NODE_EXTENSIONS="${NODE_EXTENSIONS},{\"name\":\"unimatrix\",\"path\":\"https://unimatrix01.gamechanger.finance/gun\",\"version\":\"${UNIMATRIX_VERSION}\",\"image\":\"\"}"
#NODE_EXTENSIONS="${NODE_EXTENSIONS},{\"name\":\"unimatrix\",\"path\":\"https://unimatrix02.gamechanger.finance/gun\",\"version\":\"${UNIMATRIX_VERSION}\",\"image\":\"\"}"
INDEX_LINKS="${INDEX_LINKS}<li><a href=\"unimatrix/\">Unimatrix</a></li>"
# PGAdmin
PGADMIN_PORT=${PORT_OFFSET}5051
PGADMIN_DEFAULT_EMAIL=zxpectre@gc.fi
PGADMIN_DEFAULT_PASSWORD=12345678
# Swagger
SWAGGER_PORT=${PORT_OFFSET}8180
# Haproxy
HAPROXY_HOST=haproxy
#HAPROXY_BINDED_HOST=192.168.0.5:
HAPROXY_BINDED_HOST=""
HAPROXY_PORT=308${PORT_OFFSET}
HAPROXY_CFG="./configs/haproxy/haproxy.cfg"
# Portainer
PORTAINER_PORT=${PORT_OFFSET}9000
# DuckDNS Dynamic DNS
# Go to https://www.duckdns.org/,
# create an account,
# add the subdomain on https://www.duckdns.org/domains,
# place the subdomain on DUCKDNS_DOMAINS and the API token in DUCKDNS_TOKEN or leave empty to disable auto update
#DUCKDNS_DOMAINS="${NODE_TICKER}-dandelion-node"
#DUCKDNS_TOKEN="<API_TOKEN>"
#DUCKDNS_IP=
# Manifest
INDEX_LINKS="${INDEX_LINKS}<li><a href=\"manifest/\">Manifest</a></li>"
# Haproxy Stats
INDEX_LINKS="${INDEX_LINKS}<li><a href=\"stats/\">Statistics</a></li>"