Bitcoin Node

bitcoincore, bitcoind

Минимальные требования к серверу:

  • Диск: Не менее 1 ТБ SSD (NVMe).

  • Процессор: Минимум 6 ядер.

  • Память: 8 ГБ.

  • Программное обеспечение: Необходимо наличие установленного Docker.

Создаем окружение:

mkdir -p /nodes/btc
cd /nodes/btc

Создаем дерикторию с данными bitcoind:

mkdir bitcoin_data

Создаем конфигурацию bitcoind:

nano bitcoind.conf
bitcoind.conf
[main]
rpcallowip=0.0.0.0/0 # !ALLOWED IP!
rpcbind=0.0.0.0
rpcport=8332
rpcuser=YOUR_USER_NAME
rpcpassword=YOUR_PASSWORD
server=1
#txindex=1
prune=2048 #2GB
datadir=/data/.bitcoin
keypool=2000

Создаем docker-compose.yml

nano docker-compose.yml
docker-compose.yml
x-logging:
  &default-logging
  driver: "json-file"
  options:
    max-file: "1"
    max-size: "500m"

services:
  bitcoin:
    image: rg.boxexchanger.net/boxexchanger-utils/docker-bitcoind:main
    container_name: bitcoind
    volumes:
      - ./bitcoin_data:/data/.bitcoin
      - ./bitcoind.conf:/data/bitcoind.conf
    logging: *default-logging
    restart: unless-stopped
    stop_grace_period: 15m30s
    ports:
      - "8333:8333"
      - "127.0.0.1:8332:8332"

Запускаем bitcoind в docker:

docker compose up -d

Открываем порт доступа

Создаем прокси с портов - localhost:8332 на порт 8233 для bitcoind rpc

Настраиваем прокси на caddy

Устанавливаем caddy https://caddyserver.com/docs/install Документация подготовлена для операционной системы Debian, Ubuntu

apt install -y debian-keyring debian-archive-keyring apt-transport-https
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' |  tee /etc/apt/sources.list.d/caddy-stable.list
apt update
apt install caddy

конфигурируем caddy для прокси 8332 на порт 8233 для внешней сети

nano /etc/caddy/Caddyfile

/etc/caddy/Caddyfile

:8233 {
  handle_path /* {
    reverse_proxy 127.0.0.1:8332
  }
  respond 404
}

запускаем caddy

systemctl enable --now caddy

или перезагружаем если необходимо

systemctl restart caddy

Открытие порта для RPC: Для доступа к RPC необходимо открыть порт 8233 в настройках фаервола для IP-адреса сервера, с которого будет происходить подключение.

Доступы

RPC: http://ip.host:8233/

Last updated