Links
Comment on page

Установка Tron Node

Сборка Tron Node

Документация описана для установки на чистую VDS без стороннего ПО и других программ учитывайте это при установке.
  1. 1.
    Установите необходимые пакеты:
    apt update && apt install -y git wget curl nano
  2. 2.
    Установите Docker по официальной документации https://docs.docker.com/engine/install/#server
  3. 3.
    Клонируйте репозиторий с докер-образом:
    git clone https://github.com/neoromantique/docker-java-tron.git
  4. 4.
    Переходим в директорию с проектом
    cd docker-java-tron/
  5. 5.
    Создайте конфигурационный файл и задайте нужные адреса контрактов и топики событий: (не обезательно но рекомендуем дабы не обрабатывать лишнии транзакции)
    nano ~/docker-java-tron/tron.conf
    пример конфигурации для обработки только USDT событий
    EVENT_PLUGIN_ADDRESS_FILTER=TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t
  6. 6.
    Создаем папку для данный ноды
    mkdir -p ~/docker-java-tron/data/node
  7. 7.
    Скачиваем Lite версию данных ноды с открытого источника (http://3.219.199.168/) (документация)
    wget http://3.219.199.168/backup20231116/LiteFullNode_output-directory.tgz -O ~/LiteFullNode_output-directory.tgz
  8. 8.
    Распаковать архив (папку output-directory) в ~/docker-java-tron/data/node/
    tar xvf ~/LiteFullNode_output-directory.tgz -C ~/docker-java-tron/data/node/ --strip-components=1
  9. 9.
    Удаляем архив со Lite данными
    rm ~/LiteFullNode_output-directory.tgz
    Теперь наша Tron node готова к запуску

Запускаем Node

  1. 1.
    Переходим в дерикторию проекта:
    cd ~/docker-java-tron/
  2. 2.
    Запускаем Tron node
    ./start.sh

Как добавить еще один адрес контракта

  1. 1.
    Нужно зайти в конфигурацию:
    nano ~/docker-java-tron/tron.conf
  2. 2.
    Добавить еще один адрес в блок EVENT_PLUGIN_ADDRESS_FILTER разделив адреса контрактов знаком запятой , при этом не используйте перенос строк или пробелы между адресами. Пример USDT + USDC:
    EVENT_PLUGIN_ADDRESS_FILTER=TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t,TEkxiTehnzSmSe2XqrBj4w32RUN966rdz8

Очистка данных ноды:

По умолчанию мы установили 5 дней хранения данных которые вы можете синхронизировать
Если вы хотите изменить данный параметр вам нужно добавить в вашу конфигурацию другое количество дней
  1. 1.
    Нужно зайти в конфигурацию:
    nano ~/docker-java-tron/tron.conf
  2. 2.
    Добавить строку со своим значением:
    MONGO_RETENTION_DAYS=5

Как получать логи с node:

docker exec -it tron-node tail -f logs/tron.log

Открываем порт доступа:

Создаем прокси с портов - localhost:8080 на порт 2080 для EventServer - localhost:18090 на порт 2090 для fullNode - localhost:18091 на порт 2091 для solidityNode
Настраиваем прокси на caddy
Устанавливаем caddy https://caddyserver.com/docs/install Документация подготовлена для операционной системы Debian 11 и 12.
apt install -y debian-keyring debian-archive-keyring apt-transport-https
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | tee /etc/apt/sources.list.d/caddy-stable.list
apt update
apt install caddy
конфигурируем caddy для прокси 8080,18090,18091 на порты 2080,2090,2091 для внешней сети
Caddyfile будет перезаписан полностью!
echo -e ':2080 {\n reverse_proxy :8080\n}\n:2090 {\n reverse_proxy :18090\n}\n:2091 {\n reverse_proxy :18091\n}' > /etc/caddy/Caddyfile
запускаем caddy
systemctl enable --now caddy
или перезагружаем если необходимо systemctl restart caddy
так

Доступы:

EventServer: http://ip.host:2080 Node: http://ip.host:2090 Solidity: http://ip.host:2091