https://github.com/eudaldgr/docker-bitcoind-core
scratchless bitcoind core image
https://github.com/eudaldgr/docker-bitcoind-core
bitcoin bitcoind container docker podman
Last synced: about 1 month ago
JSON representation
scratchless bitcoind core image
- Host: GitHub
- URL: https://github.com/eudaldgr/docker-bitcoind-core
- Owner: eudaldgr
- License: mit
- Created: 2025-10-14T09:26:04.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2025-10-14T21:21:09.000Z (8 months ago)
- Last Synced: 2025-10-14T23:13:46.287Z (8 months ago)
- Topics: bitcoin, bitcoind, container, docker, podman
- Language: Dockerfile
- Homepage:
- Size: 12.7 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# docker-bitcoind-core
> ⚠️ **This repository has been archived.** For the latest container images, please visit .
> Run a full Bitcoin node with one command
A Docker configuration with sane defaults for running a full Bitcoin node.
## Usage
```
docker run --name bitcoind -v $HOME/.bitcoin:/data/.bitcoin -p 8333:8333 eudaldgr/docker-bitcoind-core:
```
Replace the tag `` with the available version that you want to run. For example, to run version 30.0, use the tag `v30.0`:
```
docker run --name bitcoind -v $HOME/.bitcoin:/data/.bitcoin -p 8333:8333 eudaldgr/docker-bitcoind-core:v30.0
```
### JSON-RPC
To query `bitcoind`, execute `bitcoin-cli` from within the container:
```
docker exec -it bitcoind bitcoin-cli getnetworkinfo
```
To access JSON-RPC from other services you'll also need to expose port 8332. You probably only want this available to localhost:
```
docker run --name bitcoind -v $HOME/.bitcoin:/data/.bitcoin \
-p 8333:8333 \
-p 127.0.0.1:8332:8332 \
eudaldgr/docker-bitcoind-core:v30.0
```
You could now query JSON-RPC via cURL like so:
```
curl --data '{"jsonrpc":"1.0","id":"curltext","method":"getnetworkinfo"}' \
http://$(cat $HOME/.bitcoin/.cookie)@127.0.0.1:8332
```
### CLI Arguments
All CLI arguments are passed directly through to bitcoind.
You can use this to configure via CLI args without a config file:
```
docker run --name bitcoind -v $HOME/.bitcoin:/data/.bitcoin \
-p 8333:8333 \
-p 127.0.0.1:8332:8332 \
eudaldgr/docker-bitcoind-core:v30.0 -rpcuser=user -rpcpassword=changeme
```
Or just use the container like a bitcoind binary:
```
$ docker run -v $HOME/.bitcoin:/data/.bitcoin eudaldgr/docker-bitcoind-core:v30.0 -version
Bitcoin Core daemon version v30.0.0
Copyright (C) 2009-2025 The Bitcoin Core developers
Please contribute if you find Bitcoin Core useful. Visit
for further information about the software.
The source code is available from .
This is experimental software.
Distributed under the MIT software license, see the accompanying file COPYING
or
```
### Versions
Images for versions starting from v30.0 are available. To run a specific available version, use the appropriate tag.
```
docker run --name bitcoind -v $HOME/.bitcoin:/data/.bitcoin -p 8333:8333 eudaldgr/docker-bitcoind-core:v30.0
```
## Build
A multi-architecture (amd64 and arm64) image is automatically built and published to Docker Hub when new tags are pushed in the format `v*.*.*` (e.g., `v25.0.0`).
If you want to build this image yourself, check out this repo, `cd` into it, and run:
```
docker buildx build --platform linux/amd64,linux/arm64 --build-arg VERSION= -t : --push .
```
Replace `` with the Bitcoin Core version you're building (without the 'v' prefix), and `:` with your desired image name and tag.
The Dockerfile supports `linux/amd64` and `linux/arm64` architectures only.
## License
MIT © eudaldgr https://eudald.gr