💪Pro Hardware Guide

This guide is written for professional liquidity providers to turn a powerful Mini PC into an always-on OpenDEX node.

Two options are available:

  1. Light setup using Neutrino and a random open eth provider or optionally Infura. This keeps the setup light-weight & cheap, but creates a certain dependency on other people's full nodes.

  2. Full setup using bitcoind, litecoind and geth. Requires more resources and an SSD, but keeps the setup trustless.

Light Reference Shopping List (Europe): ~180 €

Full Reference Shopping List (Europe): ~465 €


  1. Download Ubuntu Server 20.04 LTS onto your computer. Any other linux distribution supporting docker is also fine. This guide was written using Ubuntu Server 20.04.

  2. Insert a USB Stick into your computer and create the a bootable USB Stick with the ubuntu image you just downloaded.

  3. Open your Mini PC, plug in RAM & drives, close it, connect it to your router via ethernet cable and to a power supply. Connect a screen via HDMI, a USB keyboard, the created bootable USB Stick, fire the Mini PC up and follow the the inital setup instructions.

  4. Update ubuntu via sudo apt update && sudo apt upgrade

  5. If you are using Ubuntu 20.04, install docker & docker-compose by running sudo apt install docker.io. Otherwise if you are using any version besides Ubuntu 20.04, follow the official instructions to install docker.

  6. Add new user opendex:

ubuntu@ubuntu:~$ sudo adduser opendex
Adding user `opendex' ...
Adding new group `opendex' (1001) ...
Adding new user `opendex' (1001) with group `opendex' ...
Creating home directory `/home/opendex' ...
Copying files from `/etc/skel' ...
New password: 
Retype new password: 
passwd: password updated successfully
Changing the user information for opendexd
Enter the new value, or press ENTER for the default
	Full Name []: 
	Room Number []: 
	Work Phone []: 
	Home Phone []: 
	Other []: 
Is the information correct? [Y/n] ubuntu@ubuntu:~$ Y
  1. Add the opendex user to the sudo group (advanced users can skip this and use another user to run sudo commands), the docker group and test if docker is working:

ubuntu@ubuntu:~$ sudo usermod -aG sudo opendex
ubuntu@ubuntu:~$ sudo usermod -aG docker opendex
# switch to user opendex
ubuntu@ubuntu:~$ sudo su - opendex
opendex@ubuntu:~$ docker run hello-world
Hello from Docker!
This message shows that your installation appears to be working correctly.
  1. Looking good! Optionally, add an alias to enter your opendexd environment by simply typing "opendex":

opendex@ubuntu:~$ sudo nano ~/.bash_aliases
# add the line
alias opendex='bash ~/opendex.sh'
# CTRL+S, CTRL+X. Then run
opendex@ubuntu:~$ source ~/.bashrc
  1. Connect the USB stick to your machine and set it up. It is very important to do this for a mainnet setup (given you do not want to lose money)!

# check the USB stick's path with
opendex@ubuntu:~$ ls -la /dev/ | grep sd
crw-------  1 root root      2,  61 Dec  3 16:27 ptysd
brw-rw----  1 root disk      8,   0 Dec  3 16:27 sda
brw-rw----  1 root disk      8,   1 Dec  3 16:27 sda1 #this is your USB Stick
crw-------  1 root root      3,  61 Dec  3 16:27 ttysd
# set it to automount via fstab
opendex@ubuntu:~$ sudo nano /etc/fstab
# add the line
/dev/sda1 /media/USB ext4 defaults 0 2
# CTRL+S, CTRL+X. Then mount it
opendex@ubuntu:~$ sudo mkdir /media/USB
opendex@ubuntu:~$ sudo mount -a
# check if mounting worked
opendex@ubuntu:~$ df -h
# make sure opendexd can use it
opendex@ubuntu:~$ sudo chown opendex:opendex /media/USB

DONE! Continue here.

Last updated