docker-steemd/steemd.run

75 lines
1.6 KiB
Bash

#!/bin/bash
export HOME="/var/lib/steemd"
chown -R steemd:steemd $HOME
SEED_NODES="
52.38.66.234:2001
52.37.169.52:2001
52.26.78.244:2001
192.99.4.226:2001
46.252.27.1:1337
81.89.101.133:2001
52.4.250.181:39705
steemd.pharesim.me:2001
seed.steemed.net:2001
steem.clawmap.com:2001
seed.steemwitness.com:2001
steem-seed1.abit-more.com:2001
"
ARGS=""
if [[ -z "$STEEMD_SEED_NODES" ]]; then
for NODE in $SEED_NODES ; do
ARGS+=" --seed-node=$NODE"
done
fi
if [[ ! -z "$STEEMD_SEED_NODES" ]]; then
for NODE in $STEEMD_SEED_NODES ; do
ARGS+=" --seed-node=$NODE"
done
fi
if [[ ! -z "$STEEMD_WITNESS_NAME" ]]; then
ARGS+=" --witness=\"$STEEMD_WITNESS_NAME\""
fi
if [[ ! -z "$STEEMD_MINER_NAME" ]]; then
ARGS+=" --miner=[\"$STEEMD_MINER_NAME\",\"$STEEMD_PRIVATE_KEY\"]"
ARGS+=" --mining-threads=$(nproc)"
fi
if [[ ! -z "$STEEMD_PRIVATE_KEY" ]]; then
ARGS+=" --private-key=$STEEMD_PRIVATE_KEY"
fi
# without --data-dir it uses cwd as datadir(!)
# who knows what else it dumps into current dir
cd $HOME
# overwrite local config with image one
cp /etc/steemd/config.ini $HOME/config.ini
# if no blockchain in volume, use seed from image and verify
if [[ ! -d /var/lib/steemd/blockchain ]]; then
cd /var/lib/steemd
tar xvjpf /var/cache/steemd/blockchain.tbz2
chown -R steemd:steemd blockchain
ARGS+=" --replay-blockchain"
fi
# slow down restart loop if flapping
sleep 1
exec chpst -usteemd \
steemd \
--rpc-endpoint=0.0.0.0:8090 \
--p2p-endpoint=0.0.0.0:2001 \
--data-dir=$HOME \
$ARGS \
$STEEMD_EXTRA_OPTS \
2>&1