# Запуск ноды

{% hint style="warning" %}
В качестве ОС рекомендуется использовать **Ubuntu 20.04**
{% endhint %}

Настройка окружения:

```
sudo apt-get update
curl https://getsubstrate.io -sSf | bash -s -- --fast 
source ~/.cargo/env
```

Клонируем репозиторий и собираем ноду:

```
git clone https://github.com/galacticcouncil/HydraDX-node.git
cd HydraDX-node
cargo build --release
```

Если вы получили ошибку, что в вашей системе не установлен git, устанавливаем:

```
sudo apt install git
```

Для запуска бенчмарка понадобится Python 3.8+

Установка Python 3.9:

```
sudo apt-get install software-properties-common
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt-get update
sudo apt-get install python3.9
```

Если при установке через `apt` возникли проблемы - можете собрать `python3.9` из исходников по [гайду](https://linuxize.com/post/how-to-install-python-3-9-on-ubuntu-20-04/#installing-python-39-on-ubuntu-from-source).

Если у вас установлены разные версии Python и бенчмарк по-умолчанию запускается на старой, можно указать какую версию использовать для его запуска:

```
sed -i "s|python3 |python3.9 |g " ./scripts/check_performance.sh
```

Запускаем бенчмарк:

```
./scripts/check_performance.sh
```

Если получили ошибку `Toolchain ...... Nightly toolchain required` выполните:

```
git fetch
git checkout bench-perf-update
./scripts/init.sh
rustup default nightly
./scripts/check_performance.sh
```

После нескольких минут ожидания получим результат, например:

```
HydraDX Node Performance check ... 
Running benchmarks - this may take a while...

Results:

         Pallet          |   Time comparison (µs)    |     diff*     |
amm                      |     1033.00 vs 875.70     |      157      |     OK    
exchange                 |     945.00 vs 790.80      |      154      |     OK    
transaction_multi_payment|     280.00 vs 233.76      |      46       |     OK
```

Если все 3 результата ОК - ваш сервер успешно прошел тест и готов к запуску ноды.

{% hint style="success" %}
На этом этапе можно остановиться до момента пока команда HydraDX не опубликует информацию о грядущем тестнете.
{% endhint %}

В качестве теста можно запустить `stakenet` ноду в цепи `lerna`

{% hint style="info" %}
Для удобства можно использовать [**tmux**](/hydradx/russian/tmux.md) или [**systemd**](/hydradx/russian/ispolzovanie-systemd.md)
{% endhint %}

```
./target/release/hydra-dx --chain lerna
```

Если вы хотите задать **имя** **для вашей ноды** (по умолчанию генерируется случайное при каждом запуске), используйте ключ --name

```
./target/release/hydra-dx --chain lerna --name "ИМЯ_НОДЫ #NodeBook"
```

> мне будет приятно, если укажете хэштег #NodeBook в имени ноды :)

{% hint style="info" %}
Список нод в сети можно посмотреть [**здесь**](https://telemetry.polkadot.io/#list/HydraDX%20Snakenet).
{% endhint %}

Если после запуска нода ведет себя "странно", можно перезапустить ее с отображением логов, чтобы выявить проблемы:

```
RUST_LOG=debug RUST_BACKTRACE=1 ./target/release/hydra-dx -lruntime=debug  --chain lerna
```


---

# 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://nodebook-xyz.gitbook.io/hydradx/russian/node-set-up.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.
