Як запустити вузол індексатора?
Як запустити вузол індексатора?
Відеоінструкція
Вступ
Запуск вузла індексера є іншою опцією за межами Docker або виконання проекту, розміщеного для вас за адресою SubQuery Projects. Це потребує більше часу та зусиль, але покращить ваше розуміння того, як працює SubQuery "під капотом".
Постгрес
Запуск вузла індексування на вашу інфраструктуру потребує налаштування бази даних Postgres. Ви можете встановити Postgres тут і переконатися, що версія 12 або вище.
Встановлення subql/node
Потім для запуску вузла SubQuery запустіть наступну команду:
npm install -g @subql/node
-g прапорець означає, встановлення його глобально, що означає на OSX, місцезнаходження буде /usr/local/lib/node_modules.
Після установки ви можете перевірити версію виконавши команду:
> subql-node --version
0.19.1
Встановлення налаштувань бази даних
Далі, вам потрібно встановити наступні змінні для навколишнього середовища:
export DB_USER=postgres
export DB_PASS=postgres
export DB_DATABASE=postgres
export DB_HOST=localhost
export DB_PORT=5432
Звичайно, якщо у вас є різні значення для вищезгаданих ключів, будь ласка, відрегулюйте відповідним чином. Зверніть увагу, що команда env
відобразить змінні середовища і що цей процес тимчасово встановлює ці значення. Тобто вони дійсні лише протягом тривалості сеансу терміналу. Щоб встановити їх назавжди. Зберігайте їх у вашому ~/bash_profile.
Індексація проекту
Щоб почати індексування проекту, перейдіть в папку вашого проекту і виконайте наступну команду:
subql-node -f .
Якщо у вас немає проекту під рукою, git clone https://github.com/subquery/subql-helloworld
. Ви повинні побачити, як вузол індексатора запускається і починає індексувати блоки.
Інспекція Postgres
При переході в Postgres, ви повинні побачити створені дві таблиці. public.subqueries та subquery_1.starter_entities.
public.subqueries
містить тільки 1 рядок, який перевіряє індексатор при запуску "зрозуміти поточний стан". Таким чином, він знає, звідки продовжувати. У таблиці starter_entity
містяться індекси. Щоб переглянути дані, запустіть select (*) from subquery_1.starter_entities
.