From a7140acd5d332c34547b5b8e258000ec66daeb03 Mon Sep 17 00:00:00 2001 From: Nicolas Dorier Date: Tue, 12 May 2026 10:21:57 +0900 Subject: [PATCH] Add bitcoin core 31.0 --- contrib/build-all-images.sh | 16 +++++++ .../docker-fragments/bitcoincore.yml | 46 +++++++++++++++++++ 2 files changed, 62 insertions(+) create mode 100644 docker-compose-generator/docker-fragments/bitcoincore.yml diff --git a/contrib/build-all-images.sh b/contrib/build-all-images.sh index d250b38c..2595b08f 100644 --- a/contrib/build-all-images.sh +++ b/contrib/build-all-images.sh @@ -1283,3 +1283,19 @@ docker build -f "$DOCKERFILE" -t "hhanh00/zcash-walletd:1.1.5" . cd - && cd .. +# Build bitcoin +# https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Bitcoin/31.0/Bitcoin/31.0/linuxamd64.Dockerfile +DOCKERFILE="Bitcoin/31.0/linuxamd64.Dockerfile" +# https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Bitcoin/31.0/Bitcoin/31.0/linuxarm32v7.Dockerfile +[[ "$(uname -m)" == "armv7l" ]] && DOCKERFILE="Bitcoin/31.0/linuxarm32v7.Dockerfile" +# https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Bitcoin/31.0/Bitcoin/31.0/linuxarm64v8.Dockerfile +[[ "$(uname -m)" == "aarch64" ]] && DOCKERFILE="Bitcoin/31.0/linuxarm64v8.Dockerfile" +echo "Building btcpayserver/bitcoin:31.0" +git clone https://github.com/btcpayserver/dockerfile-deps bitcoin +cd bitcoin +git checkout Bitcoin/31.0 +cd "$(dirname $DOCKERFILE)" +docker build -f "$DOCKERFILE" -t "btcpayserver/bitcoin:31.0" . +cd - && cd .. + + diff --git a/docker-compose-generator/docker-fragments/bitcoincore.yml b/docker-compose-generator/docker-fragments/bitcoincore.yml new file mode 100644 index 00000000..5e1502c4 --- /dev/null +++ b/docker-compose-generator/docker-fragments/bitcoincore.yml @@ -0,0 +1,46 @@ +services: + bitcoind: + restart: unless-stopped + container_name: btcpayserver_bitcoind + image: btcpayserver/bitcoin:31.0 + environment: + BITCOIN_NETWORK: ${NBITCOIN_NETWORK:-regtest} + CREATE_WALLET: "false" + BITCOIN_WALLETDIR: "/walletdata" + # rpcport and rpcbind seems duplicates, but they are not + # rpcport is using by some tooling to automatically get + # the rpcport from the configuration file. Do not remove! + BITCOIN_EXTRA_ARGS: | + rpcport=43782 + rpcbind=0.0.0.0:43782 + rpcallowip=0.0.0.0/0 + port=39388 + whitelist=0.0.0.0/0 + maxmempool=500 + expose: + - "43782" + - "39388" + volumes: + - "bitcoin_datadir:/data" + - "bitcoin_wallet_datadir:/walletdata" + nbxplorer: + environment: + NBXPLORER_CHAINS: "btc" + NBXPLORER_BTCRPCURL: http://bitcoind:43782/ + NBXPLORER_BTCNODEENDPOINT: bitcoind:39388 + volumes: + - "bitcoin_datadir:/root/.bitcoin" + btcpayserver: + environment: + BTCPAY_CHAINS: "btc" + BTCPAY_BTCEXPLORERURL: http://nbxplorer:32838/ +volumes: + bitcoin_datadir: + bitcoin_wallet_datadir: + +exclusive: + - bitcoin-node +recommended: + - "opt-mempoolfullrbf" +required: + - "nbxplorer"