# Install the Radix Node

## Introduction

This section of the guide will walk you through the steps to complete a Docker versioned install of the Radix Node Runner package. Alternatively, Radix also provide the instructions for a Systemd install. The original installation instructions for both can be found here;

{% embed url="<https://docs.radixdlt.com/main/index.html>" %}

## Pre-requisites

Port 30000/tcp opened for gossip

```
sudo ufw allow 30000/tcp
```

Port 443/tcp opened for NGINX

```
sudo ufw allow 443/tcp
```

{% hint style="warning" %}
The CLI has been developed with Ubuntu 20.04 and is not compatible with Windows
{% endhint %}

## Install the CLI and then install the Docker Node version using the CLI

Radix have developed a CLI tool that facilitates an easier method for installing the package and for later querying the node. We will cover the querying elements in a later section.

Make sure all your system packages are up-to-date.

```
sudo apt update -y
```

ensure **wget** is installed

```
sudo apt install wget
```

### Download the CLI package

Go to the URL <https://github.com/radixdlt/node-runner/releases> and look for the entry with the **Latest release** marker and copy the link to the latest release.

```
wget -O radixnode https://github.com/radixdlt/node-runner/releases/download/1.0.4/radixnode-ubuntu-20.04
```

&#x20;Set the permissions on the script to executable.

```
sudo chmod +x radixnode
```

&#x20;move it to the `/usr/local/bin/` directory

```
sudo mv radixnode /usr/local/bin
```

### Install Docker&#x20;

```
radixnode docker configure
```

log out of your ssh session and back in again

```
Exit ssh login and relogin back for user addition to group "docker" to take effect
```

### Configure NGINX

```
radixnode auth set-admin-password --setupmode DOCKER
```

create and enter a strong NGINX `admin` password

set the NGINX password environment variable

```
echo 'export NGINX_ADMIN_PASSWORD="nginx-password"' >> ~/.bashrc
```

add it to your session

```
source ~/.bashrc
```

do the same for a NGINX `superadmin` password

```
radixnode auth set-superadmin-password --setupmode DOCKER
```

set the NGINX superadmin environment variable

```
echo 'export NGINX_SUPERADMIN_PASSWORD="nginx-password"' >> ~/.bashrc
```

add it to your session

```
source ~/.bashrc
```

### Install and start the Radix Docker node

If you are building a validator node the enter a switch for `-n fullnode`**.** Alternatively you would enter `-n archivenode` for a non-validating archive node.

```
radixnode docker setup  \
     -n fullnode \
     -t radix://tn1qgtjz4432e7ghdfsdc6ssu4v63rwxk2g84e4yedadeasfsfaw3995l9gl6l@52.215.119.169
```

the second `-t` switch is for the seed node that you use to connect to the network. You would normally choose a node closest to your hosting region.

| <p></p><p>Asia Pacific (south-east)</p>                                                 |
| --------------------------------------------------------------------------------------- |
| <radix://tn1qdg87mk4gr8dlmfv82y9cqleqkcjm0fxlxe8vhcxvskd3k90jcmgk4ewsmw@13.210.91.116>  |
| <radix://tn1qfzy56n7wsspqjn8kal8n4ls9rs6lth3x6fzqhhdgqa7emwqz9w8j0xp4e3@3.106.19.89>    |
| <radix://tn1qt86e6vjvlcvmhgcgeu4szkmd70kg54g0j2fef9ttpt738xp0jjlv693c92@54.206.193.154> |

| Asia Pacific (south)                                                                   |
| -------------------------------------------------------------------------------------- |
| <radix://tn1qvgnymu94dw5gfug2e678x9h0puupk8vkm0z0083744jscukqvgsxjpgrnr@3.108.246.15>  |
| <radix://tn1qdhf7aeat739n77e227l3vgvv56kntp20ennaj38t5jc8988r5s2zxzxp77@3.108.209.244> |
| <radix://tn1qwrerrj64fc66v8ztcgd2fr8szx73k7ermkg5hyy8q7qelnu48svw44m362@3.108.183.207> |

| <p></p><p>EU (west)</p>                                                                 |
| --------------------------------------------------------------------------------------- |
| <radix://tn1qt9kqzzqyj27zv4n67f2jrzgd24hsxfwe8d4kw9j4msze7rpdg3guvk07jy@54.76.86.46>    |
| <radix://tn1qw3dyujr8ss29648wfqzenwx7el08yj6mpru6z62hxzlh9n3sgwwqdkl295@52.16.242.94>   |
| <radix://tn1qgtjz4432e7ghdfsdc6ssu4v63rwxk2g84e4yedadeasfsfaw3995l9gl6l@52.215.119.169> |

| <p></p><p>US (east)</p>                                                                |
| -------------------------------------------------------------------------------------- |
| <radix://tn1qvluh8d3e6uxnm2k0h6zfnng0r7hkgcd8ppjn8slzyhs7vqlavw0va9de6q@3.222.172.90>  |
| <radix://tn1q0g9zpvv2ggw99fz86q52csdjk2t0ynqz0r0e23xhdszx3r7sv9jyx84lc4@54.210.93.129> |
| <radix://tn1qt2rma6397uytnusr0ct777tp3gnzkh65apnmhz9zqjqvmwjxwvhv8rmdd3@34.195.139.75> |

It will now go through a list of questions to configure your node

![](/files/-MezNSpXm5wT7KWMUh3A)

enter **y** at the prompt

```
Going to setup node type fullnode for version 1.0-beta.37 from location https://github.com/radixdlt/radixdlt/releases/download/1.0-beta.37/radix-fullnode-compose.yml.

Do you want to continue [Y/n]?:
```

as this is our first install enter **n** for the node keystore file.

```
Do you have keystore file named 'node-keystore.ks' already from previous node Y/n?:n
```

Enter a strong password for your keystore file

```
Enter the password of the new file 'node-keystore.ks':
```

Choose **Y** to configure the data directory.

```
Do you want to configure data directory for the ledger [Y/n]?:Y
```

Enter the absolute path to where you want to store the Radix DB

```
Enter the absolute path to data DB folder: /home/radixdlt/RADIXDB
```

enter **s** for stokenet or **m** for mainnet

```
Enter the network you want to connect [S]Stokenet or [M]Mainnet or network_id:s
```

the install is now complete. Your docker yml file will be displayed where you can check the docker settings. Enter **y** to start your node

![](/files/-MeypIJ___-PPtkPq-qp)

Your node is node installed. Before we move to the next section we'll confirm some basic checks

```
radixnode api account get-info
```

should return the following Json with your own **tdx**... node wallet address

```
{"result": {"address": "tdx1qsprd6tt0dxvw9qks2mh743tr68s4ft9p6qv2zkfc622uymczragyfclqqu7e", "balance": {"stakes": [], "tokens": []}}, "id": 1, "jsonrpc": "2.0"}
```

check the software version is correct

```
radixnode api version

{"version": "1.0-beta.37-release~1.0-beta.37-SNAPSHOT"}
```

check the node's health

```
radixnode api health

{"status": "UP"}
```

other reponses may include

* BOOTING - node is booting and not ready to accept requests
* SYNCING - node is catching up the network
* UP - node is in sync with consensus
* STALLED - node is out of sync and not trying to sync with network, but network is still available.
* OUT\_OF\_SYNC - node is out of sync and does not get updates from network (for example, connection to network is lost).

the node is now ready to be registered on the network.

### Optimise Node

You need to install ansible first

```
sudo apt install ansible
```

### Original Radix Docs

Docker Install using CLI <https://docs.radixdlt.com/main/node/cli-install-node-docker.html>

SystemD Install using CLI <https://docs.radixdlt.com/main/node/cli-install-node-systemd.html>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.radix-staking.com/install-and-configure-the-radix-validator-software/install-radix-node.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
