A containerized Bitcoin Core for easy deployment of a Bitcoin node.
Find a file
2023-10-19 23:50:55 -04:00
.editorconfig Initial commit 2023-10-19 18:01:21 -04:00
Containerfile Place license boilerplate in Containerfile 2023-10-19 20:03:50 -04:00
LICENSE.txt Initial commit 2023-10-19 18:01:21 -04:00
README.org Minor edit to fix indentation 2023-10-19 23:50:55 -04:00

Bitcoin Core Container

About

This project builds images of Bitcoin Core for use as Podman or Docker containers. It has support for the following platforms:

  • amd64
  • arm64
  • arm32v7

The examples in this document use the podman command. Just swap with the docker command if you are using Docker.

Usage

IMPORTANT: It is recommended that you pin the image using the major version tags (ie. 24, 25). This way, a manual change is required before updating the service to the next major version. You can use this time to make backups in case something goes wrong.

The latest tag always points to the latest version. So it has a higher chance of introducing a breaking change by accident. Only use latest if you like living on the edge.

To run a container, use either podman run or define a service in a compose.yaml file.

Run

To run with podman run:

podman run -v ./bitcoin:/home/bitcoin/.bitcoin -p 8333:8333 code.fosterhangdaan.com/foster/bitcoin-core-container:25

Compose

To define a service in a compose.yaml file:

version: "3.8"

services:
  bitcoin-core:
    image: code.fosterhangdaan.com/foster/bitcoin-core-container:25
    container_name: bitcoin-core
    restart: unless-stopped
    volumes:
      - ./bitcoin:/home/bitcoin/.bitcoin
    ports:
      # RPC
      - 8332:8332
      # P2P
      - 8333:8333
      # ZMQ block notifications
      - 28332:28332
      # ZMQ transaction notifications
      - 28333:28333

Building

To build the image:

podman build --platform='linux/amd64' .

Set the os/arch of the built image with the --platform option. It accepts one of the following values:

linux/amd64
for amd64
linux/arm64
for arm64
linux/arm/v7
for arm32v7

Contributing

Please send patches and bug reports by email to one of the maintainers. See the Core Maintainers section for a list of contacts.

Refer to this guide if you are not familiar with sending Git patches over email.

Core Maintainers

License

Licensed under the Apache License, Version 2.0. See LICENSE.txt.

Copyright

Copyright 2023 Foster Hangdaan