-
-
Notifications
You must be signed in to change notification settings - Fork 32
/
example.env
261 lines (222 loc) · 9.61 KB
/
example.env
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
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
##################################################################################################
#
# This is an example .env file containing common environment variables that can be customised
# by the user, to allow steem-docker to be adjusted to the user's specific needs,
# as well as to aid with running multiple instances of steem-docker.
#
# The environment settings in this file **ARE THE DEFAULTS**, you **DO NOT** need to set them
# in your .env file - unless you're **CHANGING** them from the default.
#
# Note: The .env file is loaded by run.sh after several variables are already set.
# This means that you can reference variables such as $DIR (detected folder of run.sh),
# $DATADIR (absolute path to steem-docker/data) etc.
#
##################################################################################################
#################################################
# #
# #
# Docker Settings #
# #
# #
#################################################
######
# Unique name to label the container created by this steem-docker installation
DOCKER_NAME="seed"
######
# Default docker image to run using ./run.sh start / restart / replay
# Also used when tagging remote image downloaded from ./run.sh install
DOCKER_IMAGE="steem"
######
# Comma separated port numbers to expose to the internet (binds to 0.0.0.0)
PORTS=2001
# If you don't want to expose any ports (e.g. when running a witness), leave this blank
# like so:
#
# PORTS=
#
# Advanced Usage Example:
#
# Expose 2001 to the internet, but only expose RPC ports 8090 and 8091 onto 127.0.0.1 (localhost)
# allowing the host machine access to the container's RPC ports via 127.0.0.1:8090 and 127.0.0.1:8091
#
# PORTS=2001,127.0.0.1:8090:8090,127.0.0.1:8091:8091
######
# Amount of time in seconds to allow the docker container to stop before killing it.
# Default: 600 seconds (10 minutes)
STOP_TIME=600
#################################################
# #
# #
# Common SIAB Settings #
# #
# #
#################################################
######
# Websocket RPC node to use by default for ./run.sh remote_wallet
REMOTE_WS="wss://steemd.privex.io"
######
# Remote docker tags to pull when running ./run.sh install OR ./run.sh install_full with no arguments, respectively
DK_TAG="someguy123/steem:latest"
DK_TAG_FULL="someguy123/steem:latest-full"
######
# Git repository to use when building Steem - containing steemd code
STEEM_SOURCE="https://github.com/steemit/steem.git"
######
# LOCAL folder containing Dockerfile for ./run.sh build
DOCKER_DIR="$DIR/dkr"
# LOCAL folder to hold witness_node_data_dir
DATADIR="$DIR/data"
# LOCAL folder to store shared_memory.bin (or rocksdb files for MIRA)
SHM_DIR="/dev/shm"
######
# blockchain folder, used by dlblocks
BC_FOLDER="$DATADIR/witness_node_data_dir/blockchain"
#################################################
# #
# #
# Advanced SIAB Settings #
# #
# #
#################################################
######
# Example RocksDB configuration file, will automatically be copied to MIRA_FILE on first run.sh execution
# if MIRA_FILE doesn't exist
EXAMPLE_MIRA="$DATADIR/witness_node_data_dir/database.cfg.example"
MIRA_FILE="$DATADIR/witness_node_data_dir/database.cfg"
######
# Example Steem node configuration file, will automatically be copied to CONF_FILE on first run.sh execution
# if CONF_FILE doesn't exist
EXAMPLE_CONF="$DATADIR/witness_node_data_dir/config.ini.example"
CONF_FILE="$DATADIR/witness_node_data_dir/config.ini"
######
# Array of additional arguments to be passed to Docker during builds
# Generally populated using arguments passed to build/build_full
# But you can specify custom additional build parameters by setting BUILD_ARGS
# as an array in .env
# e.g.
#
# BUILD_ARGS=('--rm' '-q' '--compress')
#
BUILD_ARGS=()
STEEM_RUN_ARGS=()
######
# Additional arguments to pass to 'steemd' when running or replaying the node.
#
STEEM_RUN_ARGS_EXTRA=()
######
# Additional arguments to pass to 'steemd' only when being replayed
# E.g.
# STEEM_REPLAY_ARGS=("--set-benchmark-interval" "100000")
STEEM_REPLAY_ARGS=()
######
# Additional arguments to pass to 'docker run' when starting or replaying the node.
# Example (setting a custom IP and limiting the container to 8 vCPU's):
# DKR_RUN_ARGS=(
# "--ip" "172.30.100.104"
# "--cpus" "8"
# )
DKR_RUN_ARGS=()
DKR_RUN_BIN="steemd"
######
# If non-empty, will override the default volumes for binding the shared memory and data folders
# SHM_DIR:DKR_SHM_MOUNT and DATADIR:DKR_DATA_MOUNT
# Generally you do not need to touch this, unless for some reason you need to completely disable
# the data or shared memory volume bindings.
DKR_VOLUMES=()
######
# An array of ADDITIONAL local volumes to attach to the docker container, alongside
# DKR_VOLUMES (by default includes SHM_DIR:DKR_SHM_MOUNT and DATADIR:DKR_DATA_MOUNT)
# This can be used for fine grain separation of the data folder into completely different
# local locations
# E.g.
# EXTRA_VOLUMES=("/mnt/blockchain:/steem/witness_node_data_dir/blockchain")
EXTRA_VOLUMES=()
#############################
# Chain State download sources
# ----------------------------
# By default, SIAB uses Privex's European cluster of file servers to download the blockchain,
# block index, and RocksDB files (for MIRA).
#
# Initial download (dlblocks) of the block_log is usually done via HTTP (HTTPS is slow), while
# resuming/repairing an existing block_log is done via rsync to ensure integrity.
#
# If you'd prefer to use an alternative download source for the blockchain and/or RocksDB files,
# you can override the BC_ and ROCKSDB_ variables to point to an alternative HTTP/Rsync server
#
#############################
######
# HTTP or HTTPS url to grab the blockchain from. Set compression in BC_HTTP_CMP
BC_HTTP="http://files.privex.io/steem/block_log.lz4"
######
# Uncompressed block_log over HTTP, used for getting size for truncation, and
# potentially resuming downloads
BC_HTTP_RAW="http://files.privex.io/steem/block_log"
######
# Compression type, can be "xz", "lz4", or "no" (for no compression)
# Uses on-the-fly de-compression while downloading, to conserve disk space
# and save time by not having to decompress after the download is finished
BC_HTTP_CMP="lz4"
######
# Anonymous rsync daemon URL to the raw block_log, for repairing/resuming
# a damaged/incomplete block_log. Set to "no" to disable rsync when resuming.
BC_RSYNC="rsync://files.privex.io/steem/block_log"
######
# Rsync URL for MIRA RocksDB files
ROCKSDB_RSYNC="rsync://files.privex.io/steem/rocksdb/"
#############################
# Automation Settings
# -------------------
# Configuration options designed for skipping "are you sure" prompts etc.
# Designed for using certain SIAB features in non-interactive scripts such as cron jobs.
#
#############################
######
# Set this to 1 in your .env to ignore SHM_DIR containing /dev/shm when using MIRA related functions
# such as dlrocksdb
RDB_IGNORE_SHM=0
######
# Set these environment vars to skip the yes/no prompts during `fix-blocks`
# 0 = default (prompt user for action), 1 = automatically answer "yes", 2 = automatically answer "no"
#
AUTO_FIX_BLOCKLOG=0
AUTO_FIX_BLOCKINDEX=0
AUTO_FIX_ROCKSDB=0
######
# If AUTO_FIX_BLOCKLOG is set to 1, this controls whether we verify block_log via checksummed rsync, in the
# event that the local block_log is the same size as the remote block_log
# 1 = (default) Do not attempt to verify/repair block_log if the size is equal to the remote server
# 0 = Attempt to verify/repair block_log even if the size is equal to the remote server
#
AUTO_IGNORE_EQUAL=1
#################################################
# #
# #
# SIAB Debug / Development #
# #
# #
#################################################
# These configuration options are specifically intended for debugging / development of SIAB, they
# do not need to be set nor modified by the average user.
#
# They should not be touched unless you're either:
#
# 1. Understand Bash scripting and are attempting to debug something
# 2. Developing and debugging code for SIAB
# 3. Have been asked specifically by Someguy123 to use one or more of these variables
# to attempt to detect and correct a problem with SIAB
#
#################################################
######
# If set to 1, enables debugging output for the Privex ShellCore library
: ${SG_DEBUG=0}
######
# Manually override the install location of Privex ShellCore
# SG_DIR="$SG_DIR"
######
# If set to 1, enables debugging output for the trap.bash automatic error handler system (part of ShellCore)
: ${enable_trap_debug=0} # 0 = disable debugging messages, 1 = enable debugging messages
: ${trap_debug_stderr=1} # 0 = output debugging messages to stdout // 1 = output debugging to stderr
######
# If set to 1, the run.sh function siab_exit() will ALWAYS print a full traceback at the end of each run.sh execution
# even if no error was detected.
: ${SIAB_TRACE_EXIT=0}