Files
nullcart/electrum-daemon/docker-entrypoint.sh
T

35 lines
1.2 KiB
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
NETWORK_FLAG="--${ELECTRUM_NETWORK}"
WALLET_PATH="/electrum/wallet/${ELECTRUM_WALLET_NAME}"
DATA_DIR="/electrum/data"
run_electrum() { electrum "${NETWORK_FLAG}" --dir "${DATA_DIR}" "$@"; }
run_electrum_offline() { electrum --offline "${NETWORK_FLAG}" --dir "${DATA_DIR}" "$@"; }
mkdir -p /electrum/wallet "${DATA_DIR}"
chmod 700 /electrum/wallet
if [[ ! -f "${WALLET_PATH}" ]]; then
echo "Creating ${ELECTRUM_NETWORK} wallet at ${WALLET_PATH}..."
run_electrum_offline create -w "${WALLET_PATH}" --password "${ELECTRUM_WALLET_PASSWORD}"
chmod 600 "${WALLET_PATH}" 2>/dev/null || true
echo "Wallet created at ${WALLET_PATH}"
fi
run_electrum_offline setconfig rpcuser "${ELECTRUM_DAEMON_RPC_USER}"
run_electrum_offline setconfig rpcpassword "${ELECTRUM_DAEMON_RPC_PASSWORD}"
run_electrum_offline setconfig rpchost 0.0.0.0
run_electrum_offline setconfig rpcport "${ELECTRUM_DAEMON_PORT}"
run_electrum_offline setconfig server "${ELECTRUM_SERVER}"
trap 'run_electrum daemon stop || true; exit 0' SIGTERM SIGINT
run_electrum daemon -d
run_electrum load_wallet -w "${WALLET_PATH}" --password "${ELECTRUM_WALLET_PASSWORD}"
sleep infinity