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:
           - "./universe.json:/home/radixdlt/universe.json"
           - "./validator.ks:/home/radixdlt/validator.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-beta.35.1   "/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:

curl -k -u admin:<nginx_password_of_your_choice> https://localhost/system/info

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

// -- Truncated

"system_version":{"system_version":{"agent_version":2710000,"protocol_version":100,"display":":str:1.0-beta.35.1","commit":":str:83b8ac0e037fec983123fed214799af0d055edd5","branch":":str:release/1.0-beta.35.1"}}

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

If you lose your validator.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 Standalone node.

If you lose your key file then you will also lose your original node address when you generate a new key.

As a validator, this means your delegators will have to unstake you, then restake under your new address.

Always make sure that you create a copy of your key as soon as you’ve generated 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 validator.ks -storetype PKCS12

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

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

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