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
CMD:
sudo ufw allow 8332
mkdir /nodes
mkdir /nodes/BTC
sudo apt update
sudo apt install supervisor
/nodes/BTC/bitcoin.conf
[main]
rpcallowip=0.0.0.0/0 # !ALLOWED IP!
rpcbind=127.0.0.1
rpcport=8332
rpcuser=YOUR_USER_NAME
rpcpassword=YOUR_PASSWORD
server=1
#txindex=1
prune=2048 #2GB
datadir=/nodes/BTC
keypool=2000
/etc/supervisor/conf.d/bitcoind.conf
[program:bitcoind]
command=nice /usr/local/bin/bitcoind -conf=/nodes/BTC/bitcoin.conf
autostart=true
autorestart=true
stderr_logfile=/var/log/supervisor/bitcoind.err.log
stdout_logfile=/var/log/supervisor/bitcoind.out.log
stderr_logfile_backups=2
stdout_logfile_backups=2
environment=HOME="/root"
CMD:
sudo supervisorctl start bitcoind
sudo supervisorctl stop bitcoind
curl -#o /tmp/bitcoin.tar.gz https://bitcoin.org/bin/bitcoin-core-25.0/bitcoin-25.0-x86_64-linux-gnu.tar.gz
tar -xf /tmp/bitcoin.tar.gz -C /tmp/
cp /tmp/bitcoin-25.0/bin/bitcoind /usr/local/bin/bitcoind
rm -r /tmp/bitcoin-25.0
rm /tmp/bitcoin.tar.gz
sudo supervisorctl reread
sudo supervisorctl update
sudo supervisorctl start bitcoind
Открываем порт доступа
Создаем прокси с портов - 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