Files
KamadoPool-StartOS-0351/instructions.md
T
satoshi 4064f9e56a Initial StartOS 0.3.5.1 packaging scaffold for Kamado Pool
Multi-stage Dockerfile clones KamadoPool at a pinned SHA, builds
ckpool and kamado-api (with embedded Svelte UI), runtime image
supervises both processes via tini + wait -n. Config covers
bitcoind mainnet/testnet4 variant, payout address, coinbase tag,
vardiff knobs, and log level. Web UI interface only — stratum
:3333 requires a router port-forward or simpleproxy workaround
because StartOS 0.3.x does not forward raw TCP on LAN.

TODO before first build: pin KAMADO_REPO + KAMADO_SHA in the
Dockerfile to a pushed commit.
2026-04-13 03:51:23 +03:00

2.2 KiB

Kamado Pool

Kamado is a solo Bitcoin mining pool built on a patched fork of CKPool-solo, with a Go middleware API and a real-time Svelte dashboard. When a miner connected to your Kamado instance solves a block, the full block reward goes to the payout address you configured — no pool fees, no splits, no share accounting.

Setup

  1. Install Bitcoin Core (mainnet) or Bitcoin Core (testnet4). Kamado supports either as a dependency; pick one in the Kamado config under Bitcoin Core > Type.
  2. In the Kamado config, set Payout Address to the Bitcoin address that should receive solved block rewards.
  3. Optionally adjust the Coinbase Tag (default /Kamado/) and the vardiff parameters.
  4. Start Kamado. Open the web UI from the Services page to watch live hashrate, miners, best shares, and solved blocks.

Connecting miners

Kamado's stratum server listens on TCP port 3333 inside the container. StartOS 0.3.x does not forward raw TCP ports on the LAN interface, so you have two options to reach stratum from miners on your local network:

  • Router port-forward: Forward an external port on your router directly to your StartOS server's LAN IP on port 3333 and point miners at that.
  • simpleproxy on a second host: Run simpleproxy -L 3333 -R <startos-lan-ip>:3333 on any always-on LAN host and point miners at that host.

Once forwarding is in place, miners connect to stratum+tcp://<forward-host>:3333 with the username set to any label you like (it becomes the worker name in the dashboard) and any password.

Troubleshooting

  • No miners appear after connecting: confirm the forward actually reaches the StartOS container — telnet <forward-host> 3333 should connect. Check the Kamado logs in the Services page.
  • Bitcoin Core RPC errors: make sure Bitcoin Core is fully synced and the RPC dependency was auto-configured (Kamado enables rpc.enable during setup).
  • Best share resets to 0 after a block is found: upstream CKPool zeroes the "current round" best diff on solve. Kamado ships a patch that also exposes the all-time best, so the dashboard has both columns.

Upstream

CKPool-solo by Con Kolivas: https://bitbucket.org/ckolivas/ckpool Kamado source: https://github.com/Relaxo143/KamadoPool