Updating a Docker Node installation
27th Jun 2022 – Radix Node 1.3.0 released |
Introduction
These instructions will show you how to upgrade Radix nodes installed as docker instances. The instructions apply to:
-
Full nodes
-
Validator nodes
-
Archive nodes
Please read the instructions all the way through first, before applying the changes.
1. Prepare to update
First, if you haven’t already done so, ensure that you have backed up your node-keystore.ks
key file. This key file contains the private key that determines your node’s unique address and (if you are running a validator node) validator ID. If anything goes wrong in the update process, if you have your key file, you can always reinstall the node from scratch and use it to recover access to your node.
Next, you may want to consider using a backup node to perform a switch to the updated node with minimal interruption (especially if running a validator node) – or to provide a quick recovery if something goes wrong during the update. See our recommendations for Maintaining Uptime for more.
2. Make a Copy of your Docker Compose script
If you are running a full node or a validator node, then the file is radix-fullnode-compose.yml
. The compose script for an archive node is radix-archivenode-compose.yml
. Copy the file to another directory in case you need to restore the node later one.
3. Shutdown Docker
If you’re running a full node or a validator node, then shut down your instance using the following command:
docker-compose -f radix-fullnode-compose.yml down
If you’re running an archive node, then use radix-archivenode-compose.yml
script in the shutdown command:
docker-compose -f radix-archivenode-compose.yml down
5. Restart Docker
You can restart Docker immediately, and it will build your new node service with the compose script you have just downloaded.
If you’re running a full node or a validator node, then execute the restart command with the radix-fullnode-compose.yml
script:
RADIXDLT_NETWORK_NODE=ip_of_node_closest_to_you RADIXDLT_NODE_KEY_PASSWORD=node-password docker-compose -f radix-fullnode-compose.yml up -d
As always, use the radix-archivenode-compose.yml
script in the terminal command if you’re running an archive node.
RADIXDLT_NETWORK_NODE=ip_of_node_closest_to_you RADIXDLT_NODE_KEY_PASSWORD=node-password docker-compose -f radix-archivenode-compose.yml up -d