SubQuery開発者ガイド:インデクサーノードを実行する方法は?
動画チュートリアル:
https://youtu.be/QfNsR12ItnA
概要
インデクサーノード(Indexer)を実行することは、Dockerを使用するか、SubQueryプロジェクト以外でプロジェクトをホストするための別のオプションです。これにはより多くの時間と労力が必要ですが、SubQueryの動作を理解するのに役立ちます。
データベース
インフラストラクチャ上でインデクサーノード(Indexer)を実行するには、Postgresデータベースを設定する必要があります。
Postgresをインストールし、バージョンが12以上であることを確認してください。(https://www.postgresql.org/download/)
Subql/ノードのインストール
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=543
もちろん、上記のキーと値を変更したい場合は、適宜調整してください。
注意してください、envコマンドは現在の環境変数を表示し、このプロセスはこれらの値を一時的に設定するだけです。
つまり、これらはターミナルセッションにのみ適用されます。
それらを永続的に設定するには、~/bash_profileに保存してください。
プロジェクトのインデックス作成
プロジェクトのインデックスを開始するには、プロジェクトフォルダーに移動し、以下のコマンドを実行します:
subql-node -f
まだプロジェクトがない場合は、次のコマンドを使用してください:
git clone https://github.com/subquery/subql-helloworld
インデクサーノードが実行を開始し、ブロックのインデックス作成を開始するのが見えるはずです。
Postgresの確認
Postgresに移動すると、2つのテーブルが作成されているのが見えるはずです。
public.subquestions と subquery1.starterentities.
public.subqueries には1行のみが含まれており、インデクサーは起動時にその行をチェックして「現在の状態」を理解し、どこから続けるかを知るために使用します。starterentitiesテーブルにはインデックスが含まれています。データを表示するには、select (*) from subquery1.starter_entitiesを実行してください。
ウェブサイト:
https://www.subquery.network/
Discord中国語グループ:
https://discord.gg/ysdwnUSTQC
Telegram中国語グループ:
t.me/subquerychina
Mixin中国語グループ:
https://subquery.mixinbots.com/join