More Docker. Easy Access. New Streamlined Plans. Learn more.

bitcoinabc/bitcoin-abc

By bitcoinabc

Updated 4 days ago

Bitcoin ABC is a full node implementation of the eCash protocol.

Image

10K+

Bitcoin ABC Logo

The goal of Bitcoin ABC is to create sound money that is usable by everyone in the world. We believe this is a civilization-changing technology which will dramatically increase human flourishing, freedom, and prosperity. The project aims to achieve this goal by implementing a series of optimizations and protocol upgrades that will enable peer-to-peer digital cash to scale many orders of magnitude beyond current limits.

What is eCash?

eCash is an experimental digital currency that enables instant payments to anyone, anywhere in the world. It uses peer-to-peer technology to operate with no central authority: managing transactions and issuing money are carried out collectively by the network. eCash is a descendant of Bitcoin.

What is Bitcoin ABC?

Bitcoin ABC is the name of open-source software which enables the use of eCash. It is a fork of the Bitcoin Core software project.

How to use

Replace <version> with the container tag name in the instructions below.

Running the node software

By default the container will execute bitcoind:

docker run bitcoinabc/bitcoin-abc:<version>

To pass options to bitcoind, pass them as arguments to the container:

docker run bitcoinabc/bitcoin-abc:<version> bitcoind -version

You can also run another tool by specifying it as an argument to the container:

docker run bitcoinabc/bitcoin-abc:<version> bitcoin-cli -version

Persistent data directory

The container uses /data volume as the default data directory. To make this directory persistent across container runs, you can bind the volume to your local filesystem:

mkdir ~/bitcoin-abc-data
docker run -v ~/bitcoin-abc-data:/data bitcoinabc/bitcoin-abc:<version>

Note: Make sure the container has write access to you local folder.

Communication between bitcoin-cli and bitcoind

In order to make bitcoin-cli and bitcoind communicate together, they need to use the same network. By using the same data directory, they also share the authentication cookie:

# Run the bitcoind container in the background
docker run --name bitcoind -v ~/bitcoin-abc-data:/data --rm -d bitcoinabc/bitcoin-abc:<version>
docker run --network container:bitcoind -v ~/bitcoin-abc-data:/data --rm bitcoinabc/bitcoin-abc:<version> bitcoin-cli getnetworkinfo
docker stop bitcoind

Docker Pull Command

docker pull bitcoinabc/bitcoin-abc