Symbol Bootstrap の使用

このガイドでは、開発者が独自のネットワークまたはノードを手早く構成し、実行するために必要なセットアップスクリプトを含むパッケージである Symbol Bootstrap のコンセプトについて説明します。

こちらを読んだ後には プライベートテストネットの構築テストネットノードの実行 ガイドをより理解することができるでしょう。

このパッケージは以前のツールを置き換えます Catapult Service BootstrapSymbol Testnet Bootstrap

必須項目

環境

セットアップスクリプトは docker を使用して自動化されます。テストネットノードを立ち上げるには、次のツールをインストールする必要があります。

ポート

サーバーのホストがインターネットからアクセス可能であり、 次のポートが開いていて、使用可能であること を確認してください。

  • 7900 番ポートはノード間の通信するに catapult-server が使用します。
  • 3000 番ポートは REST ゲートウェイがエンドポイントを公開してノードとの疎通に使用します。

インストール

Symbol Bootstrap はインストール可能なツールとして提供されており、リポジトリからクローンやビルドする必要はありません。次のようにします:

npm install -g symbol-bootstrap

設定

プリセット

ノードの設定は、すべてのネットワークパラメータを指定する YAML設定ファイル を介して行われます。ファイル全体の長さは数百行に及ぶため、処理の簡素化のために プリセット を使用できます:

プリセット 説明
bootstrap mongo データベース 1 つ、Peer 2 つ、API 1 つ、REST ゲートウェイ 1 つで構成される 自律型ネットワーク 。ネメシスブロックが生成されます (設定ファイル) これはデフォルトプリセットです。
testnet 現在のパブリックテストネットに接続する 単一ノード 。ネメシスブロックはコピーされます。以下に示すように assembly を要求します (設定ファイル)

追加のパラメーターを提供する assembly (またはフレーバー) を指定することにより、プリセットをさらにカスタマイズできます:

プリセット 利用可能な構成 説明
bootstrap light mongo データベース 1 つ、デュアルピア 1 つ、REST ゲートウェイ 1 つを備えた bootstrap軽量バージョン です。高速な軽量 e2e 自動テストに最適です。ネメシスブロックが生成されます (設定ファイル)
bootstrap full It’s the default bootstrap preset plus 1 wallet, 1 explorer and 1 faucet. Great for demonstration purposes. Nemesis block is generated (configuration file).
testnet peer ノードはハーベスタです (設定ファイル)
testnet api ノードは mongo データベースと REST ゲートウェイを起動しています (設定ファイル)
testnet dual ノードは mongo データベースと REST ゲートウェイを起動しています (設定ファイル)

最後に、追加の設定が必要な場合は **カスタム YAML ファイル**で提供します。このファイルの値は、プリセットまたはアセンブリによって設定されたデフォルト値を上書きするので、それらの設定に組み合わせることができます。使用可能なパラメータについては、 ネットワークプロパティの設定 ガイドを参照してください。。

設定ファイルの作成

ネットワークを構築する前に、目的とするプリセットとアセンブリを指定して symbol-bootstrap config コマンドを実行し、構成ファイル全体を作成します:

symbol-bootstrap config -p <preset> -a <assembly> -c <custom_parameters_file.yml>

例:

symbol-bootstrap config -p bootstrap
symbol-bootstrap config -p testnet -a peer
symbol-bootstrap config -p testnet -a dual
symbol-bootstrap config -p testnet -a dual -c custom_parameters.yml

これにより、デフォルトでは target というフォルダが作成されます。 (-t オプションで指定できます) フォルダ内にはネットワークを構築するために生成された完全な構成ファイル (target/config/prefix.yml) を含む config フォルダが存在します。

注釈

ユーザが docker グループに属していないと Permission denied while trying to connect to the Docker daemon socket というエラーが表示される場合があります。このように追加します:

sudo addgroup $USER docker

ネットワークとノードを構築

このコマンドは提供した構成に基づいて、必要な Docker ファイルを準備します:

symbol-bootstrap compose

これは一度実行する必要があります。

ネットワークの立ち上げ

最後に、次のコマンドを実行して必要な Docker インスタンスを起動し、ネットワークを起動します:

symbol-bootstrap run

プロセスを停止するには Ctrl+C を押下します。

注釈

ターミナルのバックグラウンドで Docker コンテナを実行するには --detach または -d オプション使用してサービスをデタッチモードで実行します。

オールインワンの start コマンド

上記3つのコマンドは (config, compose, run) 1つにまとまります:

symbol-bootstrap start -p <preset> -a <assembly>

そうです、テストネットワークまたはノードを 1 つのコマンドでインスタンス化して起動することができます。

次の手順

次のガイドに進み、学習したことを実践してください!

symbol-bootstrap コマンドの 全リスト を参照してください。