フルネットワーク
Full Network モードでの Block Builder セットアップと運用手順
Block Builder ノードは、INTMAX Network にブロックを送信する重要なコンポーネントです。
このガイドでは、自動セットアップスクリプトを使用して Full Network モードで INTMAX2 Block Builder をセットアップ・実行する手順を説明します。より柔軟なサーバーサイド管理や、複数の Block Builder を異なる環境にデプロイしたい場合は、Standalone モードのドキュメントを参照してください。
注意: Mainnet と Testnet の2つのバージョンを提供しています。混同しないようご注意ください。
主な特徴
Block Builder は、秘密鍵(Private Key)で指定された Ethereum アカウントから Scroll にブロックを送信します。Scroll ネットワークとやり取りするコアコンポーネントであり、将来の機能拡張に対応するため、外部トランザクションを受け付ける設計になっています。
メインネット環境で安定した運用を行うため、Block Builder は継続的に稼働させる必要があります。
トランザクションの送信:
Block Builder は外部ソースからトランザクションを収集し、ブロックとして
Scrollネットワークに送信します。これにより、ネットワーク全体との効率的なやり取りとシームレスなブロック送信を実現します。
手数料の収集:
Block Builder はトランザクションごとにユーザーあたり $0.005 の手数料を収集します。
1ブロックあたり最大 $0.005 × 128 の手数料を蓄積でき、スケーラブルでインセンティブのある運用を支えます。
オンラインステータスの通知:
Block Builder は1日1回、Block Builder Registry Contract にトランザクションを送信して、Indexer にオンラインであることを通知します。
Indexer は最適な Block Builder の URL をユーザーに配信する重要な役割を担っており、効率的で信頼性の高いネットワークインタラクションを確保します。
要件
推奨構成:
2 vCPU
4 GB RAM
10 GB SSD
最小構成:
1 vCPU
1 GB RAM
4 GB SSD
はじめに
⚠️ セキュリティに関する重要な注意
インターネットからスクリプトをダウンロードして実行する際は十分ご注意ください。 実行前に必ずスクリプトのソースと内容を確認してください。ソースを信頼でき、スクリプトの動作を理解した上で実行してください。
必ず以下に記載された公式 INTMAX2 リポジトリの URL からダウンロードしてください。 これにより、正規のスクリプトを入手できます。
前提条件
Docker がシステムにインストールされていること
Block Builder 用の有効な秘密鍵と、
ScrollSepoliaテストネットに最低 0.01ETHL2 RPC URL へのアクセス
bash シェルが使える Linux/Windows/macOS 環境
クイックセットアップ
1. セットアップスクリプトのダウンロード
⚠️ 重要: セキュリティと信頼性を確保するため、必ず公式 INTMAX2 GitHub リポジトリ からダウンロードしてください。
2. 設定の初期化
このコマンドにより、以下のファイルが作成されます。
frpc.toml— FRP クライアント設定nginx.conf— Nginx プロキシ設定docker-compose.yml— Docker サービス設定.env— 環境変数
3. 環境変数の設定
重要なステップ: L2 RPC URL と秘密鍵の両方を、統合環境セットアップコマンドで設定します。
この対話型コマンドでは、以下の入力を求められます。
L2 RPC URL:
ScrollSepoliaの RPC エンドポイントScrollMainnet RPC の例https://rpc.ankr.com/scrollhttps://scroll-mainnet.infura.io/v3/YOUR_PROJECT_IDhttps://scroll-mainnet.g.alchemy.com/v2/YOUR_API_KEY
ScrollTestnet RPC の例https://rpc.ankr.com/scroll_sepolia_testnethttps://scroll-sepolia.infura.io/v3/YOUR_PROJECT_IDhttps://scroll-sepolia.g.alchemy.com/v2/YOUR_API_KEY
秘密鍵: ウォレットの秘密鍵(
0xプレフィックスの有無は問いません)関連するウォレットに
ScrollSepoliaテストネットで最低 0.01ETHがあることを確認してください秘密鍵は Docker シークレットとして安全に保存されます
4. 設定の検証(オプション)
このコマンドでは以下を検証します。
L2 RPC URL のフォーマットとアクセス可能性
秘密鍵のフォーマットと Docker シークレットの保存状態
設定の概要表示
5. 最終チェック
以下が表示されます。
すべての必須ファイルのステータス
Docker のインストール状態
環境変数の検証結果
Block Builder のドメイン URL
6. Block Builder の起動
7. ヘルスチェック
8. サービスの監視
利用可能なコマンド
./builder.sh setup
一意の UUID を使用して設定ファイルを作成
./builder.sh setup-env
対話型の環境設定(L2_RPC_URL + 秘密鍵)
./builder.sh verify-env
環境設定の検証
./builder.sh check
設定の検証と現在の設定内容の表示
./builder.sh run
すべてのサービスを Docker Stack で起動
./builder.sh stop
すべての Docker Stack サービスを停止
./builder.sh health
サービスのヘルスチェック
./builder.sh monitor
サービスステータスの監視とログの表示
./builder.sh update
スクリプトを最新バージョンに更新
./builder.sh clean
すべての設定ファイルと Docker リソースを削除
./builder.sh docker-clean
Docker コンテナ、イメージ、ネットワークを削除
./builder.sh version
バージョン情報の表示
ヘルスチェック
Block Builder が正しく動作しているか確認するには?
このセクションでは、Block Builder インスタンスが正しく動作しているかを検証する方法と、ステータスや手数料情報を取得する方法を説明します。
Block Builder エンドポイントの例:
https://proxy.builder.intmax.io/b7d899c2-6a77-4f7e-9c00-d970e9d6fb48
ヘルスチェックと手数料情報
Block Builder が正しく動作しているか確認します。
FAQ
Q: Docker コンテナ内の同期データはどこに保存されますか?
A: Block Builder はデータを永続的に保存しません。トランザクションデータを受信してブロックとして送信するのみです。トランザクションデータは一時的にメモリに保持されますが、ディスクに書き込まれたりコンテナ内に永続的に保存されたりすることはありません。そのため、同期データが保存される特定のディレクトリはありません。
Q: Ubuntu で libssl.so.1.1 ライブラリが見つからないエラーの解決方法
libssl.so.1.1 ライブラリが見つからないエラーの解決方法Ubuntu で libssl.so.1.1 が見つからないエラーが発生した場合、以下の手順で必要なパッケージを手動インストールできます。
Q: L2_RPC_URL に Alchemy 以外の RPC URL を使用できますか?
L2_RPC_URL に Alchemy 以外の RPC URL を使用できますか?A: はい、L2_RPC_URL には Alchemy 以外の RPC プロバイダーも使用できます。代替プロバイダーの例:
Infura
Ankr
カスタム RPC: 自前のセルフホストノードの RPC URL
パフォーマンスと安定性は RPC プロバイダーによって異なる場合があるため、環境とユースケースに最適なものを選択してください。
Q: メインネットでの Block Builder 1回の送信にかかるガス代はいくらですか?
Block Builder が1ブロックを送信するのに必要なガス代は約 0.000016 ETH です。安定した運用のためには、この金額よりも多めに保持しておくことをお勧めします。メインネットや Scroll ネットワークの混雑状況によりガス代は変動する場合があるのでご注意ください。
Q: Indexer に自分の Block Builder が登録されているか確認する方法
以下の URL にリクエストを送信してください。Indexer に登録されているアドレスのうち3件がランダムに返されます。リクエストを数回繰り返すと、現在アクティブな Block Builder のリストを確認できます。
Q: Block Builder の URL が Indexer に登録されるタイミングは?
Block Builder の稼働開始後、INITIAL_HEART_BEAT_DELAY で設定された時間が経過すると、Block Builder Registry Contract に URL が登録されます。 URL が有効であれば、その 10〜15 分後に Indexer に登録されます。 登録されるためには、Indexer 側から URL にアクセスできる必要があります。
Q: Deposit に必要な最低 ETH 量は?(安定運用にはどれくらいの ETH が必要?)
ETH 量は?(安定運用にはどれくらいの ETH が必要?)Block Builder を安定して運用するには、最低 0.01 ETH を Deposit してください。
1ブロックの送信に必要なガス代は約 0.000016 ETH ですが、ネットワークの混雑状況により変動します。残高が 0.001 ETH を下回ると、ブロックの送信ができなくなります。
推奨される残高管理:
目安として、アカウントに 常に 0.01
ETH以上を維持してください残高が 0.002
ETHを下回った場合、できるだけ早くチャージしてください残高が 0.001
ETHを下回った場合、ブロック送信が失敗するため、定期的な残高確認と適時のチャージを強く推奨します
Q: Block Builder でカスタム手数料を設定できますか?
はい、Block Builder ではカスタム手数料を設定できます。対応トークンは ETH、~~USDC、WBTC~~ で、それぞれ tokenIndex で以下のように識別されます。
tokenIndex: 0→ETHtokenIndex: 1→ITXtokenIndex: 2→WBTCtokenIndex: 3→USDC
たとえば、0:2500000000000 を指定すると、手数料は 0.0000025 ETH に設定されます。
複数のトークンの手数料を同時に定義することもできます。
例:
REGISTRATION_FEE=0:2500000000000~~,1:100000~~
これにより、手数料は 0.0000025 ETH および 1 に設定されます。USDC
Q: 複数の Block Builder を運用したい場合はどうすればよいですか?
複数の Block Builder を運用したい場合(スケーリングや冗長性のためなど)は、Standalone Block Builder ドキュメントに記載されている Standalone モードのセットアップを使用してください。
Standalone モードでは:
各 Block Builder は独立して動作し、異なるクラウド環境にデプロイできます
各 Block Builder が Indexer からアクセス可能になるよう、ネットワークアクセス(ファイアウォールルール、ポート、リバースプロキシなど)の設定はご自身で行う必要があります
Indexer は パブリックにアクセス可能な Block Builder の URL のみを登録します
このモードは複数の Builder を並行運用するのに適しており、それぞれ異なる URL で登録できます。
👉 セットアップ手順は Block Builder セットアップ: Standalone を参照してください。
トラブルシューティング
よくある問題
プレースホルダー値が更新されていない
対処法:
.envファイルを編集し、プレースホルダー値を実際の値に置き換えてくださいDocker が見つからない
対処法: 公式インストールガイドに従って Docker をインストールしてください
設定ファイルが見つからない
対処法:
./builder.sh setupを実行して設定ファイルを生成してくださいDocker Swarm が有効でない
以下を実行した場合:
次のエラーが表示されることがあります。
これは マシン上で Docker Swarm モードが初期化されていないことを意味します。
Docker Swarm は
docker stack deployの使用やスタック内で定義されたサービスの管理に必要です。
リファレンス
INTMAX2 ネットワークで開発を行う際に役立つリソースです。
INTMAX2 Block Builder
GitHub でソースコードと実装の詳細を確認できます。
INTMAX Mainnet
App フロントエンド: Mainnet App を開く
Explorer: Mainnet Explorer を開く
INTMAX Testnet
App フロントエンド: Testnet App を開く
Explorer: Testnet Explorer を開く
スマートコントラクト
デプロイ済みスマートコントラクトとその使い方に関するドキュメントです。
最終更新