Skip to main content

Installing a Wallet Server

Configure Dojo

Dojo is a powerful API based backend server which can be configured in many different ways. For simplicity, easy of usability, and ease of updating Dojo in the future, this step will walk you through the most simple method of configuring Dojo which will automatically setup and install all of the following:

    • Dojo (default)
    • Bitcoin Core (default)
    • BTC-RPC Block Explorer (default)
    • Fulcrum Indexer
    • Fulcrum Electrum Server Tor hidden service
    • Fulcrum Electrum Server exposed over local network

Admin credentials

The following steps will require you to generate secure admin "usernames", "passwords", and "keys". These admin credentials are:

    • BITCOIND_RPC_USER
    • BITCOIND_RPC_PASSWORD
    • MYSQL_ROOT_PASSWORD
    • MYSQL_USER
    • MYSQL_PASSWORD
    • NODE_API_KEY
    • NODE_ADMIN_KEY
    • NODE_JWT_SECRET

Each of these admin credentials must be:

    • Unique
    • Alphanumeric (made up of only numbers, uppercase letters, and lowercase letters)
    • 40 characters long for security

Generate admin credentials

Using a password manager (like Bitwarden or KeePassXC), first generate and save an alphanumeric string for each of the admin credentials above.


Continue copying and pasting the following commands in the terminal, then press ENTER.

cd ~/dojo-app/docker/my-dojo/conf/

Open the "bitcoind" configuration in the editor:

nano docker-bitcoind.conf.tpl

Top tips for editing configuration files:

    • Do not use your mouse
    • Use your keyboard UP, DOWN, LEFT, RIGHT, HOME, and END buttons to navigate
    • Use your keyboard BACKSPACE button to delete text
    • Paste using ctrl + shift + v
    • If you make a mistake, go:
      • ctrl + x
      • then press n
      • then press ENTER
      • then enter the last "nano" command into the terminal to try again

Edit the "bitcoind" configuration:

Paste in your admin credentials for:

    • BITCOIND_RPC_USER=PasteCredentialHere
    • BITCOIND_RPC_PASSWORD=PasteCredentialHere

Set the following:

    • BITCOIND_DB_CACHE=2048

Save and exit:

    • ctrl + x
    • then press y
    • then press ENTER

Open the "mysql" configuration in the editor:

nano docker-mysql.conf.tpl

Edit the "mysql" configuration:

Paste in your admin credentials for:

    • MYSQL_ROOT_PASSWORD=PasteCredentialHere
    • MYSQL_USER=PasteCredentialHere
    • MYSQL_PASSWORD=PasteCredentialHere

Save and exit:

    • ctrl + x
    • then press y
    • then press ENTER

Open the "indexer" configuration in the editor:

nano docker-indexer.conf.tpl

Edit the "indexer" configuration:

Set the following:

    • INDEXER_INSTALL=on
    • INDEXER_TYPE=fulcrum
    • INDEXER_BATCH_SUPPORT=active
    • INDEXER_EXTERNAL=on

If your Dojo node is running on its own separate machine within your local network, set the following to the IP address of the machine which Dojo is running on:

    • INDEXER_EXTERNAL_IP=TypeIPaddressHere
      • for example: INDEXER_EXTERNAL_IP=192.168.4.117

If your Dojo node is running on your same local machine (i.e. you will be running Dojo on your everyday Ubuntu computer), leave this field set to the following default setting:

    • INDEXER_EXTERNAL_IP=127.0.0.1

Save and exit:

    • ctrl + x
    • then press y
    • then press ENTER

Open the "node" configuration in the editor:

nano docker-node.conf.tpl

Edit the "node" configuration:

Paste in your admin credentials for:

    • NODE_API_KEY=PasteCredentialHere
    • NODE_ADMIN_KEY=PasteCredentialHere
    • NODE_JWT_SECRET=PasteCredentialHere

Set the following:

    • NODE_ACTIVE_INDEXER=local_indexer

Save and exit:

    • ctrl + x
    • then press y
    • then press ENTER

Clean up:

Once you have finished this step of the guide, the only credential which you need to save (either in your password manager, or written down on a notepad) is the NODE_ADMIN_KEY.

The NODE_ADMIN_KEY is what you will need to login and access your Dojo Maintenance Tool in the future.

All other credentials which you generated earlier and pasted into the configuration files no longer need to be saved in your password manage or written down in a notepad. You can now delete/destroy them. You will not need these on a daily basis, and it is always possible to retrieve them from your Dojo in the future should you require them.