47 lines
1.0 KiB
Bash
47 lines
1.0 KiB
Bash
#!/bin/bash
|
|
|
|
export HOME="/var/lib/bitcoind"
|
|
|
|
# gen random pw for rpc server
|
|
RANDOMPW=$(openssl rand -hex 10)
|
|
|
|
# if password is specified, overwrite config file
|
|
if [[ "$BITCOIND_RPCPASSWORD" != "" ]]; then
|
|
cat <<EOF > $HOME/bitcoin.conf
|
|
rpcuser=${BITCOIND_RPCUSER:-rpcuser}
|
|
rpcpassword=${BITCOIND_RPCPASSWORD:-$RANDOMPW}
|
|
EOF
|
|
else
|
|
# if using randomly generated pw, do not overwrite config
|
|
# if it already exists
|
|
if [[ ! -e $HOME/bitcoin.conf ]]; then
|
|
cat <<EOF > $HOME/bitcoin.conf
|
|
rpcuser=${BITCOIND_RPCUSER:-rpcuser}
|
|
rpcpassword=$RANDOMPW
|
|
EOF
|
|
fi
|
|
fi
|
|
|
|
# SECURITY this puts the rpc password into the container log
|
|
cat $HOME/bitcoin.conf
|
|
|
|
ARGS=""
|
|
ARGS+=" -printtoconsole"
|
|
ARGS+=" -disablewallet"
|
|
ARGS+=" -datadir=$HOME"
|
|
ARGS+=" -conf=$HOME/bitcoin.conf"
|
|
ARGS+=" -rpcallowip=::/0"
|
|
|
|
if [[ ! -d $HOME/blocks ]]; then
|
|
if [[ -e /var/lib/bootstrap.dat ]]; then
|
|
ARGS+=" -loadblock=/var/lib/bootstrap.dat"
|
|
fi
|
|
fi
|
|
|
|
chown -R bitcoind:bitcoind $HOME
|
|
|
|
exec chpst -ubitcoind \
|
|
bitcoind $ARGS \
|
|
$BITCOIND_EXTRA_OPTS \
|
|
2>&1
|