Skip to content
 
 

Latest commit

 

History

294 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

kohanucha/bitcoin-core-docker

Docker images for Bitcoin Core (bitcoind), built from the official release source and verified against the release's signed checksums.

A fork of lncm/docker-bitcoind, originally published as lnliz/docker-bitcoind.

  • Multi-arch: linux/amd64, linux/arm64, linux/arm/v7docker pull picks your CPU's architecture automatically
  • Runs bitcoind as an unprivileged user (UID 1000) with a HEALTHCHECK
  • Also ships bitcoin-cli, bitcoin-tx, bitcoin-util, and bitcoin-wallet

Usage

docker run -d --name bitcoind \
    -v ~/.bitcoin:/data/.bitcoin \
    -p 8332:8332 -p 8333:8333 -p 28332:28332 -p 28333:28333 \
    kohanucha/bitcoin-core-docker:v31.1
  • 8332 — JSON-RPC (see Security)
  • 8333 — P2P
  • 28332 / 28333 — ZMQ blocks / transactions

Talk to the node:

docker exec bitcoind bitcoin-cli -getinfo

Latest tags on Docker Hub: core-latest, v31.1.

Security

RPC binds to localhost inside the container by default, so publishing 8332 alone does not expose it. To reach RPC from outside you must pass -rpcbind and -rpcallowip — and should always add -rpcauth:

docker run -d --name bitcoind \
    -v ~/.bitcoin:/data/.bitcoin \
    -p 8332:8332 \
    kohanucha/bitcoin-core-docker:v31.1 \
    -rpcbind=0.0.0.0 -rpcallowip=10.0.0.0/8 -rpcauth=user:salt$hash
  • -rpcbind is ignored unless -rpcallowip is also set
  • Use -rpcauth (generate with share/rpcauth/rpcauth.py in the Bitcoin Core source); never -rpcpassword alone
  • Never expose RPC to the internet. P2P and ZMQ are safe to expose; RPC is not

Build & reproducibility

  • Base images and every Alpine package are pinned by digest/version
  • Release source is verified against the signed SHA256SUMS (≥3 good signatures, 0 bad) before building
  • Guix builder keys are vendored in-repo; refresh with ./update-builder-keys.sh
  • Built on tag push only, scanned with Trivy (fails on CRITICAL/HIGH), and pushed as a single multi-arch image carrying BuildKit provenance (mode=max) and SBOM attestations

See CHANGELOG.md for the full list of what's different from upstream.

Disclaimer

This project is provided as-is, without warranty of any kind. You use it at your own risk and are responsible for protecting your wallet keys, RPC access, and any funds held by the node. This project is not affiliated with or endorsed by the Bitcoin Core project or its maintainers.

Troubleshooting

If bitcoind won't start because the data directory is owned by another user:

sudo chown -R 1000.1000 ~/.bitcoin

Originally based on lncm/docker-bitcoind.

About

Bitcoin core docker file

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages