Налаштування блокчейн-експлорера: вибір платформи та розгортання

Публічні експлорери на кшталт Etherscan або Solscan зручні, доки ви використовуєте публічну мережу і їхнє API покриває задачі. Власний блокчейн-експлорер стає необхідним, коли ви працюєте з private/consortium blockchain — там немає публічного оглядача. Або коли потрібна кастомна логіка відображення:

Напрямки блокчейн-розробки

Часті запитання

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1450
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1309
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    1004
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1270
  • image_logo-advance_0.webp
    Розробка логотипу компанії B2B Advance
    719
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    1011

Публічні експлорери на кшталт Etherscan або Solscan зручні, доки ви використовуєте публічну мережу і їхнє API покриває задачі. Власний блокчейн-експлорер стає необхідним, коли ви працюєте з private/consortium blockchain — там немає публічного оглядача. Або коли потрібна кастомна логіка відображення: брендований UI, специфічні метрики протоколу, закриті патерни запитів. Ми не раз стикалися з ситуаціями, коли публічні сервіси розкривають конфіденційні дані про трафік — власний експлорер вирішує цю проблему. Архівна нода на Ethereum займає близько 17 ТБ, але витрати виправдані: ви отримуєте повний контроль і можливість кастомізувати інтерфейс. Економія на ліцензіях комерційних експлорерів може сягати 40% річних, а приблизні витрати на хостинг експлорера з архівною нодою становлять $300-500 на місяць.

Як вибрати платформу для блокчейн-експлорера?

Blockscout: універсальне рішення для EVM

Open-source, написаний на Elixir/Phoenix, підтримує всі EVM-сумісні мережі. Використовується як офіційний експлорер для Gnosis Chain, Optimism, Base та інших L2. Як зазначено в Blockscout README, він пропонує багатий функціонал: верифікація контрактів, перегляд токенів (ERC-20, ERC-721, ERC-1155), NFT, DeFi-метрики, REST API та GraphQL. Однак його стек (Elixir + PostgreSQL + Redis + нода) важкий: для production потрібно від 32 ГБ RAM, а початкове налаштування нетривіальне.

Otterscan: легкість та мінімалізм

Легковаговий експлорер на React, який працює напряму з Erigon нодою через розширений ots_ namespace API. Йому не потрібна окрема база даних — вся історія зберігається в самій ноді. Плюс: мінімальний footprint, немає окремого індексування, старт займає хвилини. Мінус: потрібен саме Erigon (не geth, не Nethermind), немає верифікації контрактів, функціонал базовий.

The Graph: коли потрібні кастомні дані

The Graph не є повноцінним експлорером, але якщо вам потрібно вивести конкретні дані протоколу (наприклад, обсяги ліквідності по пулах або історію ставок), subgraph + кастомний фронтенд виявляться швидшими та дешевшими за повний експлорер. Це не заміна, а доповнення.

Порівняння платформ

Платформа Функціонал Інфраструктура Час розгортання Верифікація контрактів
Blockscout Повний: токени, NFT, API, DeFi PostgreSQL + Redis + нода, ≥32 ГБ RAM 2–4 тижні індексування Так, через Sourcify або API
Otterscan Базовий: транзакції, блоки Тільки Erigon нода Хвилини Ні
The Graph Кастомні дані по підписці Subgraph + фронтенд Години–дні Тільки через subgraph

Otterscan запускається в 100 разів швидше за Blockscout (хвилини проти тижнів), але функціонал у 2 рази вужчий. Blockscout індексує паралельно, що підвищує швидкість обробки блоків на 50%.

Вимоги до ноди для різних платформ

Платформа Тип ноди Додаткові методи Дисковий простір (Ethereum mainnet)
Blockscout Archive debug_traceTransaction, trace_block ~17 ТБ
Otterscan Erigon (archive) ots_* методи ~17 ТБ (Erigon)
The Graph Повна або archive Стандартні RPC ~12 ТБ (full)

Архівна нода потребує 17 ТБ диска, що на 40% більше за повну ноду (12 ТБ).

Як налаштувати експлорер за 5 кроків

  1. Вибір платформи — визначтеся, чи потрібен повний функціонал (Blockscout), мінімалізм (Otterscan) або тільки кастомні метрики (The Graph).
  2. Підготовка ноди — для Blockscout потрібна архівна нода з увімкненими debug/trace методами. Для Otterscan — Erigon. Переконайтеся, що дискового простору достатньо для зберігання повної історії.
  3. Розгортання інфраструктури — використовуйте Docker Compose для Blockscout або просто запустіть Erigon для Otterscan.
  4. Налаштування індексування — оптимізуйте batch size і паралельні потоки, щоб прискорити завантаження історії.
  5. Верифікація та запуск — підключіть Sourcify або вручну верифікуйте контракти через API. Запустіть UI та налаштуйте SSL.

Що потрібно для розгортання Blockscout?

Інфраструктура

Використовуємо Docker Compose для швидкого розгортання. Нижче спрощений конфіг, який ми адаптуємо під ваші задачі:

version: '3.8' services: db: image: postgres:15 environment: POSTGRES_DB: blockscout POSTGRES_USER: blockscout POSTGRES_PASSWORD: ${DB_PASSWORD} volumes: - postgres_data:/var/lib/postgresql/data shm_size: '512mb' redis: image: redis:7-alpine command: redis-server --maxmemory 4gb --maxmemory-policy allkeys-lru backend: image: blockscout/blockscout:latest depends_on: [db, redis] environment: DATABASE_URL: postgresql://blockscout:${DB_PASSWORD}@db:5432/blockscout ETHEREUM_JSONRPC_VARIANT: geth ETHEREUM_JSONRPC_HTTP_URL: http://node:8545 ETHEREUM_JSONRPC_WS_URL: ws://node:8546 ETHEREUM_JSONRPC_TRACE_URL: http://node:8545 SECRET_KEY_BASE: ${SECRET_KEY_BASE} CHAIN_ID: "1" COIN: ETH NETWORK: Mainnet SUBNETWORK: Ethereum Mainnet POOL_SIZE: 80 ECTO_USE_SSL: 'false' SOURCIFY_INTEGRATION_ENABLED: 'true' SOURCIFY_SERVER_URL: https://sourcify.dev/server ports: - "4000:4000" frontend: image: ghcr.io/blockscout/frontend:latest environment: NEXT_PUBLIC_API_HOST: http://backend:4000 NEXT_PUBLIC_NETWORK_NAME: My Network NEXT_PUBLIC_NETWORK_SHORT_NAME: MyNet NEXT_PUBLIC_NETWORK_ID: "1" ports: - "3000:3000" 

Вимоги до ноди

Blockscout використовує нестандартні RPC-методи: debug_traceTransaction для внутрішніх транзакцій, trace_block та trace_transaction для Parity-сумісних трейсів, а також eth_getBalance в архівному режимі. Звичайна повна нода не підходить — потрібна архівна нода з увімкненими debug/trace методами. Для Ethereum mainnet розмір архівної ноди становить близько 17 ТБ. Це основна стаття інфраструктурних витрат. Приклад запуску Geth:

geth --mainnet \ --syncmode full \ --gcmode archive \ --http \ --http.api eth,net,web3,debug,txpool \ --ws \ --ws.api eth,net,web3,debug \ --cache 32768 
Детальніше про вимоги до ноди

Для коректної роботи Blockscout нода повинна підтримувати:

  • debug_traceTransaction — для внутрішніх транзакцій
  • trace_block, trace_transaction — для трейсів
  • Архівний режим — інакше дані про баланси старих адрес будуть недоступні.

Також переконайтеся, що HTTP і WebSocket API відкриті, а ліміт газу не нижче 10 млн.

Як прискорити індексування?

При першому запуску Blockscout індексує історію з останнього блоку назад. Для mainnet це може зайняти 2–4 тижні. Оптимізуємо через змінні:

BLOCK_TRANSFORMER: base INDEXER_BLOCK_REWARD_BATCH_SIZE: 10 INDEXER_COIN_BALANCES_BATCH_SIZE: 500 INDEXER_RECEIPTS_BATCH_SIZE: 250 INDEXER_INTERNAL_TRANSACTIONS_BATCH_SIZE: 20 

Для приватних мереж з невеликою історією повне індексування займає години. Час синхронізації можна скоротити на 50% за допомогою паралельної обробки.

Як верифікувати смарт-контракти?

Верифікація через Sourcify — децентралізований репозиторій верифікованих контрактів. Якщо контракт вже є в Sourcify, Blockscout підтягне дані автоматично. Також доступна пряма верифікація через REST API з відправкою вихідного коду та параметрів компілятора: надішліть POST-запит з необхідними даними.

Кастомні метрики та branded UI

Якщо потрібен фірмовий стиль та нестандартні сторінки, Blockscout дозволяє задавати кастомні токени та нативну монету через env-змінні, форкнути frontend (Next.js) і доопрацювати дизайн, а також додавати додаткові сторінки, наприклад метрики протоколу, як окремі React-компоненти.

Що входить в роботу

Ми налаштовуємо експлорери для 15+ проєктів, включаючи приватні мережі та публічні L2. Команда має досвід понад 5 років у блокчейні. Ось що входить в наш процес "під ключ":

  • Аналітика: вибір платформи під ваші вимоги (мережа, метрики, бюджет).
  • Проєктування: підготовка інфраструктури, розрахунок ресурсів для archive node.
  • Розгортання: Docker Compose або Kubernetes, конфігурація ноди та експлорера.
  • Індексування: оптимізація паралельності, моніторинг відставання.
  • Верифікація: інтеграція Sourcify, налаштування API.
  • Запуск: Nginx reverse proxy з SSL, домен, алерти.

Терміни: від 2 до 3 тижнів залежно від складності мережі та необхідних кастомізацій. Отримайте консультацію з налаштування експлорера для вашої мережі. Ми гарантуємо стабільну роботу індексатора та оперативну підтримку. Зв'яжіться з нами, щоб обговорити деталі та індивідуальний план розгортання.