Node Dashboard
Overview
In this section we'll install the Node Dashboard, a lightweight PHP web application that allows you to monitor your Bitcoin node from a web browser on your local network. As the workshop progresses, the dashboard will also display the status of additional services such as the Electrum server, Lightning node and other software installed on your node.
The dashboard is served by the Apache web server and uses PHP to generate its web pages.
Install Apache
Install the Apache web server.
apt update
apt install apache2
Verify that the Apache service is running.
systemctl is-active apache2
The command should return:
active
From another computer on your local network, open a web browser and browse to your node. If you used the suggested hostname during the Debian installation, browse to:
http://bitcoin-node.local
If your network doesn't support .local hostnames, browse to the node's IP address instead. For example:
http://192.168.0.100
You should see the default Debian Apache web page beginning with "It works!".
Install PHP
Install PHP together with the Apache PHP module and the PHP cURL extension.
apt install php libapache2-mod-php php8.4-curl
Clone the Dashboard Repository
Switch to the nelson account.
su - nelson
Change to the web server directory.
cd /srv/www
Clone the Dashboard repository.
git clone https://github.com/dgnelsonoz/dashboard.git
Change into the repository.
cd dashboard
List the available release tags (press q to exit).
git tag
Choose the release you want to install. At the time of writing, the current release is v1.0.0.
Verify the Release
Download and import the Dashboard maintainer's public signing key.
wget https://github.com/dgnelsonoz.gpg -O dan-nelson-public-key.asc
gpg --import dan-nelson-public-key.asc
Display the key fingerprint.
gpg --fingerprint 263006653+dgnelsonoz@users.noreply.github.com
Verify that the fingerprint matches:
FF1D 7E57 4592 ACB0 CE68 FED6 2536 465B 3430 EEB0
Verify the release tag.
git tag --verify v1.0.0
You should see a message similar to:
gpg: Good signature from "Dan Nelson <263006653+dgnelsonoz@users.noreply.github.com>"
Check out the verified release.
git checkout v1.0.0
Prepare the configuration file
These are the credentials that allow the dashboard to query the bitcoin node. We'll edit this file later after Bitcoin Core has been installed.
cd /srv/www/dashboard/config
cp bitcoin-rpc-example.php bitcoin-rpc.php
Return to the root account.
exit
Configure Apache
Copy the example Apache virtual host configuration.
cp /srv/www/dashboard/config/apache2/dashboard.conf.example \
/etc/apache2/sites-available/dashboard.conf
Enable the dashboard site.
a2ensite dashboard.conf
Disable the default Apache site.
a2dissite 000-default.conf
Test the Apache configuration.
apache2ctl configtest
The command should report:
Syntax OK
Reload Apache.
systemctl reload apache2
Test the Installation
Open a web browser and browse to your node.
http://bitcoin-node.local
or
http://192.168.0.100
The Node Dashboard should be displayed.
Confirm that the Bitcoin Core panel displays information from your node.
Other services that have not yet been installed may be shown as Not installed. This is expected and these panels will become active as you continue through the workshop.
Next Steps
Your Node Dashboard is now installed and ready to monitor your Bitcoin node.
In the next section we'll install Bitcoin Core and connect it to the dashboard.