Mirobit / bitcoin-node-manager

:bar_chart: Lightweight dashboard and control system for bitcoin nodes
MIT License
116 stars 59 forks source link
bitcoin bitcoin-node cryptocurrency dashboard manager node php

Bitcoin Node Manager

Bitcoin Node Manager (BNM) is a lightweight dashboard and control system for your Bitcoin node.

Check out ElextrumX Dashboard if you run an Electrumx Server.

Features

Requirements

Installation

  1. Clone the repository.
  2. Make sure bitcoind (-daemon) is running. If you use bitcoin-qt set server=1 in the bitcoin.conf file.
  3. Copy src/Config.sample.php and remove .sample. Open src/Config.php and enter your Bitcoin Core RPC credentials and set the BNM password.

Manual setup

  1. Make sure the BNM folder is in your web servers folder (e.g. /var/www/html/). If the server is publicly accessible, I recommend renaming the BNM folder to something unique. Although BNM is password protected and access can be limited to a specific IP, there can be security flaws and bugs.
  2. Check that the server (e.g. www-data) has access (read and write) to the data folder (git will change the ownership by default).
  3. Open the URL to the folder in your browser and login with the password chosen in src/Config.php.

Docker

The BNM folder is mounted as volume in Docker. This way you can edit src/Config.php and update BNM (git pull) at any time without connecting to the container.

  1. Change the RPC IP in src/Config.php to the docker network interface IP.
  2. Run either docker-compose up -d or docker run -d -p 8000:80 --name bnm -v ${PWD}:/var/www/html php:7.4-apache in the BNM folder.
  3. Add the following to your bitcoin.conf:
    rpcbind=127.0.0.1 
    rpcbind=172.17.0.1 
    rpcallowip=0.0.0.0/0
  4. BNM should now be accessible under http://server-ip:8000.

Security

Roadmap