I want to share my experience getting my Bitcoin node up and running so others can do it too. Note I'm not an expert in computers but I was able to learn many things along the way and get the job done.
At first, I was looking to buy a Raspberry Pi but I could not find one at a reasonable price so I decided to buy a used mini pc instead: any Dell Optiplex, HP EliteDesk or Lenovo ThinkCentre to be exact.
At the end this is what I bought:
1. Lenovo ThinkCentre M715q with 8GB RAM with a tiny hard drive.
2. Timetec 2.5" SATA SSD of 2TB of capacity.
3. Fueran DP display emulator plug.
I also needed temporary the following which I already had:
A. Another computer
B. Monitor
C. Keyboard
D. Mouse
E. Empty USB stick
In addition to this I used the following free software:
a. Latest LTS version of Ubuntu Desktop
b. balenaEtcher
c. Umbrel
And this was the whole process:
i. Replace the tiny hard drive in [1] with [2].
○ Instructions from the Lenovo page: https://download.lenovo.com/pccbbs/pubs/m715q_2gen/en/index.html
ii. Install [a] on [1].
○ Instructions from the Ubuntu page: https://ubuntu.com/tutorials/install-ubuntu-desktop#3-create-a-bootable-usb-stick
○ For the first steps you will need [A], [a], [b] and [E].
○ For the follow on steps you will need [1] and [B] through [E].
○ Do not skip the update step.
iii. Familiarize yourself with Ubuntu.
○ Navigation: How to Use Ubuntu (Beginners Guide)
○ Terminal: How to open terminal in Linux Ubuntu
○ Ubuntu help: https://help.ubuntu.com/stable/ubuntu-help/
iv. Install [c] on [a].
○ Open the Terminal in Ubuntu and run:
§ curl -L https://umbrel.sh | bash
○ If you get an error you need to install curl first with these commands in the Terminal:
§ sudo apt update
§ sudo apt install curl
○ Instructions taken from the Umbrel page: https://umbrel.com/#start
v. Take note of the urls (http addresses) Umbrel gives you at the end of [iv]
○ Addresses are right after the message "Umbrel is now accessible at" in the Terminal.
○ You can access Umbrel from [1] or any other computer connected to your local network... just use a browser to go to either url in [v].
Up to this point the only thing left to do was to install the Bitcoin Node app from within Umbrel. However, I would like to share few more steps I took to tidy up the setup.
Remote desktop into [1] so [B] through [D] are not needed anymore:
i. In Ubuntu go to Settings > Sharing and turn on Remote Desktop.
○ Turn on as well Remote Control.
○ Set a User Name and Password.
ii. Remote desktop into [1] from a Windows computer connected to your local network.
○ From the Windows computer open the Remote Desktop Connection app.
○ Change the User Name to [i] and click Connect.
○ Enter the Password per [i] and click Ok.
iii. If successful, reboot [1] and try [ii] again.
iv. If this time fails because Ubuntu is changing the Password in [i], do this:
○ In Ubuntu, create a new keyring called myKEYRING in the "Passwords and Keys" app with no password.
○ Set myKEYRING as the default keyring.
○ Delete the Remote Desktop password from the "Login" keyring.
○ Reboot [1] to ensure that the myKEYRING is the default one.
○ Re-enter the Remote Desktop password per [i] to save it to myKEYRING.
○ Go back to the "Passwords and Keys" app and set the "Login" keyring to default again.
○ Reboot [1].
v. Allow Remote Desktop to work with the locked screen
○ In Ubuntu, install the gnome-shell-extension-manager with this command:
§ sudo apt install gnome-shell-extension-manager
○ Open the newly installed app called "Extension Manager".
○ Within this app, search for and install the "Allow Locked Remote Desktop" GNOME Shell extension.
vi. Turn off [1].
vii. Disconnect [B] through [D] from [1].
viii. Connect [3].
ix. Place [1] in its final place, you can now control it from your Windows machine.
Setup the Bitcoin node
i. Familiarize yourself with Umbrel and the Bitcoin node.
○ These videos are the best... just ignore the Raspberry Pi sections and perhaps the Lighting sections.
○ Umbrel: How To Run A Bitcoin Node - Parts, Assembly and Software Installation
○ UMBREL - How To Use Your Bitcoin and Lightning Node (NEW)
ii. Access Umbrel with either of the urls captured in [v] above and set your user and password.
iii. Install the Bitcoin Node app and let it download the entire blockchain.
iv. Be patient as this can take few days.
v. Once the blockchain in 100% synced share the blockchain with others:
○ Within the Bitcoin Node app go to Advanced Settings.
○ Turn on "Incoming Connections".
○ Click on "Save and Restart Bitcoin Node"
I also installed the below two additional apps within Umbrel:
• Electrs: required to connect my Trezor hardware wallet to the Bitcoin node.
• mempool: to explore the blockchain anonymously using the Bitcoin node.
And I assigned a static IP address to [1] from my home router. This is not a must but it is highly recommended so the url to connect to Umbrel never changes.
• Instructions how to do it in an ASUS router: Guide for manually assigning IP addresses for an Asus Router
This got me up and running with my node. However, this is not the end as the node also requires some maintenance.
To maintain the node I follow these steps once per quarter:
i. Remote desktop into [1], open the Terminal and use the following commands:
○ To stop Umbrel:
§ cd umbrel
§ sudo ./scripts/stop
○ To update Ubuntu OS:
§ sudo apt update
§ sudo apt upgrade
○ To restart [1]:
§ sudo reboot
ii. Remote desktop into [1], open the Terminal and use the following commands:
○ To start Umbrel
§ cd umbrel
§ sudo ./scripts/start
iii. Access Umbrel, go to Settings and install the new Umbrel version if available.
That's it. I hope this is useful to help some of you in setting up your own Bitcoin node. If you want to send me some love you can zap me here in Nostr.