본문으로 건너뛰기

인덱서 노드를 실행하는 방법은 무엇인가요?

SubQuery Team1분 미만

인덱서 노드를 실행하는 방법은 무엇인가요?

비디오 가이드


소개

인덱서 노드를 실행하는 것은 Docker를 사용하거나 SubQuery 프로젝트open in new window에서 프로젝트를 호스팅하는 것 외에 다른 옵션입니다. 더 많은 시간과 노력이 필요하지만 SubQuery가 어떻게 작동하는지 이해하는 데 도움이 됩니다.

Postgres

인프라에서 인덱서 노드를 실행하려면 Postgres 데이터베이스를 설정해야 합니다. 여기open in new window에서 Postgres를 설치하고 버전이 12 이상인지 확인할 수 있습니다.

Subql/노드 설치

SubQuery 노드를 실행하려면, 다음 명령을 실행합니다.

npm install -g @subql/node

-g 플래그는 OSX에서 위치가 /usr/local/lib/node_modules가 됨을 의미하는 전역적으로 설치함을 의미합니다.

설치가 완료되면 다음을 실행하여 버전을 확인할 수 있습니다.

> subql-node --version
0.19.1

DB 구성 설정

다음으로, 다음 환경 변수를 설정해야 합니다.

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 and subquery_1.starter_entities.

public.subqueries는 시작 시 "현재 상태를 이해"하기 위해 인덱서가 확인하는 행을 하나만 포함하므로 계속되는 위치를 알 수 있습니다. starter_entities 테이블에는 인덱스가 포함되어 있습니다. 데이터를 보려면 subquery_1.starter_entities에서 select(*)를 실행합니다.