mirror of
https://github.com/benjamin-wilson/public-pool.git
synced 2026-09-29 09:05:06 -07:00
127 lines
3.4 KiB
Bash
127 lines
3.4 KiB
Bash
# bitcoin node running in your private network 192.168.1.0/24
|
|
BITCOIN_RPC_URL=http://192.168.1.100
|
|
|
|
# bitcoin node running undockered on the same PC
|
|
# needs to add rpcallowip=172.16.0.0/12 to your bitcoin.conf
|
|
#BITCOIN_RPC_URL=http://host.docker.internal
|
|
|
|
BITCOIN_RPC_USER=
|
|
BITCOIN_RPC_PASSWORD=
|
|
BITCOIN_RPC_PORT=8332
|
|
BITCOIN_RPC_TIMEOUT=10000
|
|
|
|
# Enable in bitcoin.conf with:
|
|
# zmqpubrawblock=tcp://0.0.0.0:3000
|
|
BITCOIN_ZMQ_HOST=tcp://192.168.1.100:3000
|
|
|
|
API_PORT=3334
|
|
# Docker host/IP and public host port for the API listener.
|
|
# Keep API_BIND_HOST as 127.0.0.1 when a reverse proxy terminates public traffic.
|
|
API_BIND_HOST=127.0.0.1
|
|
API_PUBLIC_PORT=3334
|
|
API_WORKERS=4
|
|
|
|
# Docker json-file log rotation. Applies when using the compose files.
|
|
DOCKER_LOG_MAX_SIZE=100m
|
|
DOCKER_LOG_MAX_FILES=5
|
|
|
|
# Plain TCP Stratum ports accept both SV1 JSON-RPC and SV2 Noise/binary traffic.
|
|
# Legacy/default ports mine in solo mode.
|
|
STRATUM_PORTS=3333,3332,3331,3330
|
|
# Optional PPLNS-mode SV1/SV2 autodetect ports.
|
|
#PPLNS_STRATUM_PORTS=
|
|
STRATUM_WORKERS=2
|
|
STRATUM_WORKER_MAX_MEMORY_RESTART=4096M
|
|
STRATUM_MIN_DIFFICULTY=1
|
|
STRATUM_SOCKET_TIMEOUT_MS=3600000
|
|
STRATUM_TCP_KEEPALIVE_INITIAL_DELAY_MS=60000
|
|
|
|
# Optional additional SV2-only mining ports. Usually unnecessary when STRATUM_PORTS are exposed.
|
|
#STRATUM_V2_PORTS=
|
|
#PPLNS_STRATUM_V2_PORTS=
|
|
#SV2_START_DIFFICULTY=100000
|
|
#SV2_TARGET_SHARES_PER_MINUTE=2
|
|
#SV2_DIFFICULTY_CHECK_INTERVAL_MS=60000
|
|
#STRATUM_V2_SOCKET_TIMEOUT_MS=3600000
|
|
#SV2_AUTHORITY_PRIVKEY=
|
|
#SV2_JDP_PORTS=
|
|
#PPLNS_SV2_JDP_PORTS=
|
|
#SV2_JDP_POOL_PAYOUT_ADDRESS=
|
|
#SV2_JDP_TOKEN_TTL_MS=600000
|
|
#SV2_TDP_PORTS=
|
|
#PPLNS_SV2_TDP_PORTS=
|
|
#SV2_TDP_POOL_PAYOUT_ADDRESS=
|
|
|
|
# Optional DATUM Prime-compatible listener. DATUM_POOL_PAYOUT_ADDRESS is the
|
|
# required pool coinbase output DATUM gateways must include in custom templates.
|
|
#DATUM_PORTS=
|
|
#PPLNS_DATUM_PORTS=
|
|
#DATUM_POOL_PAYOUT_ADDRESS=
|
|
#DATUM_SHARE_DIFFICULTY=1
|
|
# 32-byte hex seed for the DATUM server identity key. DATUM clients must be
|
|
# configured with the matching logged public key.
|
|
#DATUM_IDENTITY_SEED=
|
|
|
|
STRATUM_SECURE=true
|
|
SECURE_STRATUM_PORTS=4333,4332,4331,4330
|
|
#PPLNS_SECURE_STRATUM_PORTS=
|
|
STRATUM_MAX_CONNECTIONS_PER_LISTENER=10000
|
|
STRATUM_TLS_HANDSHAKE_TIMEOUT_MS=10000
|
|
|
|
#optional telegram bot
|
|
#TELEGRAM_BOT_TOKEN=
|
|
|
|
#optional discord bot
|
|
#DISCORD_BOT_CLIENTID=
|
|
#DISCORD_BOT_GUILD_ID=
|
|
#DISCORD_BOT_CHANNEL_ID=
|
|
|
|
#optional
|
|
DEV_FEE_ADDRESS=
|
|
# mainnet | testnet
|
|
NETWORK=mainnet
|
|
|
|
API_SECURE=false
|
|
|
|
#postgresql
|
|
DB_HOST=timescaledb
|
|
DB_PORT=5432
|
|
DB_USERNAME=public_pool
|
|
DB_PASSWORD=public_pool
|
|
DB_DATABASE=public_pool
|
|
DB_POOL_SIZE=10
|
|
DB_SSL=false
|
|
DB_SSL_REJECT_UNAUTHORIZED=true
|
|
|
|
#accepted share accounting
|
|
SHARE_ACCOUNTING_BATCH_SIZE=500
|
|
SHARE_ACCOUNTING_FLUSH_INTERVAL_MS=25
|
|
SHARE_ACCOUNTING_MAX_QUEUE_SIZE=50000
|
|
SHARE_ACCOUNTING_SUMMARY_CACHE_MS=2500
|
|
SHARE_ACCOUNTING_SUMMARY_CACHE_MAX=10000
|
|
CLIENT_PRESENCE_ENABLED=true
|
|
CLIENT_HASHRATE_PERSIST_INTERVAL_MS=60000
|
|
SHARE_ROLLUP_ENABLED=true
|
|
SHARE_ROLLUP_INTERVAL_MS=60000
|
|
SHARE_ROLLUP_SAFETY_LAG_SECONDS=30
|
|
SHARE_ROLLUP_MAX_SHARES_PER_BATCH=5000000
|
|
|
|
# payout snapshot accounting
|
|
PAYOUT_SNAPSHOT_ENABLED=true
|
|
PAYOUT_METHOD=pplns
|
|
PAYOUT_WINDOW_FACTOR=4
|
|
PAYOUT_BOOTSTRAP_WINDOW=true
|
|
# solo preserves current one-address coinbase payouts. Set to snapshot to pay
|
|
# the latest payout snapshot directly in coinbase outputs.
|
|
PAYOUT_COINBASE_MODE=solo
|
|
PAYOUT_MAX_COINBASE_OUTPUTS=10
|
|
PAYOUT_MIN_OUTPUT_SATS=546
|
|
PAYOUT_FEE_ADDRESS=
|
|
PAYOUT_FEE_PERCENT=0
|
|
PAYOUT_COINBASE_WEIGHT_BUDGET=50000
|
|
|
|
#redis
|
|
REDIS_URL=redis://redis:6379
|
|
|
|
PRODUCTION=false
|