XMRig miners connect over stratum → ducpool verifies shares and tracks them in Postgres → PPLNS payouts go out automatically. A bilingual (FR/EN) web dashboard is built into the same binary.
git clone https://github.com/Duc-inc/ducpool.git
cd ducpool
# git clone https://github.com/Duc-inc/duchain ../duchain # sibling checkout, required
cp .env.example .env # fill in NODE_RPC_URL, POOL_COINBASE_ADDRESS, DATABASE_URL...
make build # production build (needs librandomx)
./bin/ducpoold # runs migrations, starts stratum (:3333) + dashboard (:8080)No librandomx yet? make build-dev builds with a stub hasher for local
testing - never deploy it.
xmrig -o stratum+tcp://<pool-host>:3333 -u <your-DUC-address>.<worker-name> -p x -a rx/0 --coin nonePayouts go out once your balance crosses PAYOUT_MIN_PAYOUT_WEI (or a
custom threshold you set from the dashboard) and the block has matured.
Open http://<host>:8080/ - pool stats, per-address lookup, recent
blocks, payout history, connect MetaMask to manage your own payout
threshold. FR/EN switch in the nav.
sudo cp deploy/ducpool.service /etc/systemd/system/
sudo systemctl enable --now ducpoolmake test
docker compose up -d postgres
make test-db DUCPOOL_TEST_DATABASE_URL=postgres://ducpool:changeme@localhost/ducpool_test?sslmode=disable