Frequently Asked Questions

Questions from the Discord Channel, email messages, and one or two we’ve thrown around internally. They’re in no particular order, but as the list grows, we’ll start looking at categorizing them into sections. Watch this space.

How do I mount the ledger on a volume external to my Docker instance?

  1. Update the radix-fullnode-compose.yml to create a `core_ledger`as an external volume.

         volumes:
           - "./node-keystore.ks:/home/radixdlt/node-keystore.ks"
           - "core_ledger:/home/radixdlt/RADIXDB" (1)
    1 Add this line to mount the volume and link it to the home/radixdlt/RADIXDB folder within the Docker instance.
  2. Add the definition for your external volume:

     volumes:
        nginx_secrets:
        core_ledger:
          driver: local
          driver_opts:
            o: bind
            type: none
            device: /data
  3. The /data directory needs to have open permissions as the user on the docker container is not available on the host. Use the following command to set permissions.

    sudo chmod 647 /data

Once the radix-fullnode-compose.yml is updated, the configuration needs to be applied. Bring down the node and then restart it using the instructions mentioned here.

How do I check if my Docker instance node is running?

Execute the docker ps command from a terminal window.

docker ps

You should see separate processes for the radixdlt-core and nginx, with both entries show their running times, along with their status (in this case, both processes are showing up as healthy).

540135fb8e6a  radixdlt/radixdlt-core:1.0.0   "/opt/radixdlt/confi…"   2 hours ago   Up 2 hours (healthy)   127.0.0.1:9009-9010->9009-9010/tcp                                                             radixdlt_core_1
08a190d0623e   radixdlt/radixdlt-nginx:latest      "/bin/sh /docker-ent…"   2 hours ago   Up 2 hours (healthy)   0.0.0.0:443->443/tcp, :::443->443/tcp, 80/tcp, 0.0.0.0:30000->30000/tcp, :::30000->30000/tcp   radixdlt_nginx_1

Where can I find the version number for the Node I’m running?

You can execute a call to the service which will respond with, amongst other things, the node’s software version number. Enter the following terminal command:

radixnode api version

The response is a json string that carries the version number as part of its payload.

{"version": "1.0.0"}

I’ve lost my key file … How can I regain access to my node?

If you lose your node-keystore.ks file then you will need to regenerate a new one and install it again. Here are the instructions for creating a key for a node running as a Docker instance, and here are the instructions for creating a key for a systemd node.

The key file contains a randomly-generated private key that determines your node’s unique address and (if choosing to register as a validator node) validator ID.

This means if you lose your key file, you will forever lose your node address and validator ID - forcing you to generate a new key file from scratch.

Any tokens held by the node address will be lost.

As a validator, your delegators will have to unstake from your validator ID and restake to your new ID.

Always make sure that you securely back up your key file as soon as you’ve generated it, and carefully protect it.

How do I change the password associated with my Key File?

If you think the password on your keyfile has been compromised then you may want to change it without generating a new key file. (Generating a new key file has ramifications, especially for validators.)

You can use the Java keytool tool to change the keyfile’s password. The interactive form shown below will prompt you for your old password and then your new password.

interactive mode
keytool -storepasswd -keystore node-keystore.ks -storetype PKCS12

Or you can just type the whole thing out on the command line:

non-interactive mode
keytool -storepasswd -keystore node-keystore.ks -storetype PKCS12 -storepass current_password -new new_password

Thanks, again, to Stuart | RadixPool #0282 for this tip.