
Обзор
ADAMANT использует Fair dPoS (Delegated Proof of Stake) для консенсуса в блокчейне. Запуск собственной ноды укрепляет децентрализацию сети и позволяет участвовать в форжинге как делегату. В этом руководстве описывается установка на Ubuntu 20–24 (предпочтительно) или CentOS 8, хотя могут подойти и другие совместимые с Linux системы.
Требуется сервер или VPS с минимум 2 ГБ ОЗУ и 70 ГБ дискового пространства (по состоянию на октябрь 2025 года для мейннета).
Быстрая установка
Для первоначальной настройки запустите скрипт установки с правами sudo. Скрипт обновляет пакеты ОС, создаёт системного пользователя adamant, устанавливает PostgreSQL, Node.js и другие зависимости, настраивает ноду ADAMANT и при необходимости загружает образ блокчейна. Вам будет предложено задать пароли для базы данных и системных пользователей.
Ubuntu:
sudo bash -c "$(wget -O - https://adamant.im/install_node.sh)"
CentOS:
sudo bash <(curl -s https://adamant.im/install_node_centos.sh)

Используйте инструмент screen, чтобы установка завершилась даже при разрыве SSH-соединения. Процесс обычно занимает 10–20 минут.
Для тестовой сети добавьте соответствующие флаги:
Ubuntu:
sudo bash -c "$(wget -O - https://adamant.im/install_node.sh)" -O -b dev -n testnet -j jod
CentOS:
sudo bash <(curl -s https://adamant.im/install_node_centos.sh) -b dev -n testnet -j jod
Ручная установка (Ubuntu)
Эти шаги предназначены для Ubuntu. В CentOS используйте эквивалентные команды или приведённый выше быстрый скрипт.
Подготовка системы
Обновите систему и установите инструменты сборки, git и Redis:
sudo apt update && sudo apt upgrade -y
sudo apt-get install -y build-essential curl automake autoconf libtool rpl mc git redis-server
Настройка PostgreSQL
Добавьте репозиторий PostgreSQL и установите его:
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
wget -q https://www.postgresql.org/media/keys/ACCC4CF8.asc -O - | sudo apt-key add -
sudo apt update && sudo apt install -y postgresql postgresql-contrib libpq-dev
Создайте пользователя базы данных и саму базу. Используйте надёжный пароль вместо примера ниже:
su postgres -c psql
CREATE ROLE adamant LOGIN PASSWORD 'HardPass111';
CREATE DATABASE adamant_main;
ALTER DATABASE adamant_main OWNER TO adamant;
\q
Создание системного пользователя
adduser adamant
sudo usermod -aG sudo adamant
su - adamant
Установка Node.js и PM2
Установите nvm, затем Node.js LTS (Hydrogen/v18), затем PM2 в качестве менеджера процессов:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash
Выйдите и снова войдите, чтобы nvm начал работать, затем:
nvm i --lts=hydrogen
npm install -g pm2
Клонирование и настройка ADAMANT
git clone https://github.com/Adamant-im/adamant
cd adamant
npm i
cp default.config.json config.json
nano config.json
В файле config.json установите пароль от базы данных, соответствующий созданному ранее. Установите api/access/public в значение true, если хотите разрешить внешний доступ к API (включает веб-сервер для API-запросов). Установите consoleLogLevel в значение error для более чистых логов.
Дополнительно: образ блокчейна
Загрузка предварительно собранного образа блокчейна экономит время синхронизации, но требует доверия к источнику. Пропуск этого шага означает полную проверку каждой транзакции, что может занять несколько дней, но гарантирует целостность цепи.
pm2 stop adamant
wget https://explorer.adamant.im/db_backup.sql.gz
gunzip db_backup.sql.gz
psql adamant_main < db_backup.sql
Если ранее вы регистрировали ноду с этой базой данных, сначала удалите и создайте её заново с помощью dropdb и createdb.
Запуск и проверка
Запустите ноду с помощью PM2, который запускает процесс в фоне и автоматически перезапускает его при сбоях:
cd /home/adamant/adamant && pm2 start --name adamant app.js
Проверьте статус с помощью pm2 show adamant — он должен быть online. Запросите высоту блокчейна:
curl -k -X GET http://localhost:36666/api/blocks/getHeight
При запуске высота равна 1 и увеличивается по мере синхронизации. Когда синхронизация завершится, высота будет соответствовать другим нодам в сети. Проверьте логи с помощью pm2 logs adamant, если возникнут проблемы. Вы также можете убедиться, что ваша нода отображается в мониторе сети ADAMANT, найдя свой IP-адрес.
Включение публичного API
Публичный API позволяет приложениям ADAMANT Messenger подключаться к вашей ноде. Внутренний API (localhost) включён по умолчанию. Чтобы разрешить внешний доступ, установите api/access/public в значение true в файле config.json, затем перезапустите:
pm2 restart adamant
Проверьте, открыв http://<IP>:36666/api/blocks/getHeight в браузере.
Остановка и обновление
Остановите ноду с помощью pm2 stop adamant. Чтобы обновить:
su - adamant
cd adamant
pm2 stop adamant
git pull
npm update
pm2 restart adamant
Автозапуск при перезагрузке
Добавьте запись в crontab от имени пользователя adamant, чтобы нода перезапускалась после перезагрузки VPS:
crontab -e
@reboot cd /home/adamant/adamant && pm2 start --name adamant app.js
В качестве альтернативы pm2 save и pm2 startup обеспечивают более надёжный механизм автозапуска.
Восстановление
Если нода теряет синхронизацию и перезапускается с высоты 0 — обычно из-за аппаратных ошибок или нехватки места на диске — используйте скрипт восстановления, чтобы восстановить данные из образа блокчейна. Это особенно полезно для делегатов, которым нужно быстро вернуться к работе:
sudo bash -c "$(wget -O - https://adamant.im/fix_node.sh)" -O -n mainnet
В качестве альтернативы выполните описанные выше ручные шаги по загрузке образа блокчейна.