Commit b920797
committed
Add INSTALL.md — end-to-end installation guide
Covers everything from git clone to accepting a first share, both
local dev (macOS/Linux) and production Ubuntu.
Sections:
Overview — stack diagram, mode selection (solo / pps / pps-classic)
with clear notes on which mode does what and when to pick which.
Prerequisites — dep install commands for macOS (brew) and Ubuntu
(apt + NodeSource + grpcurl).
Part A — local dev: build + tests + regtest stack invocation.
Part B — production Ubuntu: both the one-shot deploy-to-server.sh
invocation AND a manual walkthrough (service user creation, git
clone, make, npm install, DB init, systemd unit rendering with
the @user@/@root@ substitutions).
Part C — the drivechain stack: prebuilt binary URLs for
bitcoind-patched, electrs, enforcer, Thunder. Config skeletons
for each. Notes on the rest=1 requirement and the enforcer
gRPC-first ordering constraint Thunder needs.
Part D — proxy.conf per mode. Minimal working example for solo /
pps / pps-classic, plus optional Redis broadcast block.
Part E — dashboard install. Systemd drop-in pattern for env vars
(PUBLIC_STRATUM_URL, ADMIN_USER, ADMIN_PASSWORD, THUNDER_RPC_URL,
POOL_THUNDER_RESERVE_ADDRESS, POOL_PPS_SATS_PER_DIFF) with an
openssl-generated password. Warning about admin-behind-plain-HTTP.
Part F — payout worker install. Systemd drop-in + a dry-run
invocation for validating the plumbing before enabling.
Part G — first-run verification: 7-step checklist covering pool
listening, journalctl for GBT connectivity, dashboard reachable,
admin gated, first miner authorize, accrual landing in
pps_credits, and the audit cross-check flipping ✓.
Part H — install-time troubleshooting: hiredis missing header,
GBT curl failure, enforcer rest=1 missing, Thunder gRPC race,
pool_btc_address missing, address-in-use with the pkill -x note,
invalid-thunder-address on authorize.
Every reference to external docs goes through the local guides
(OPERATOR_GUIDE, NONCE_AND_SHARES, CLASSIC_PAYOUTS, PPS_THUNDER,
VERIFY, scripts/regtest/README).
No hostnames / passwords / hostnames-of-specific-deployments; every
placeholder is < angle-bracketed > for the reader to fill in.1 parent b8ffd09 commit b920797
1 file changed
Lines changed: 625 additions & 0 deletions
0 commit comments