Symbol Bootstrap の使用

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

こちらを読んだ後には プライベートテストネットワークの作成Symbnol ノードの立ち上げ ガイドをより理解することができるでしょう。

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

必須項目

環境

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

ポート

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

  • 7900 番ポートはノード間の通信するに catapult-server が使用します。
  • 3000 番ポートは REST ゲートウェイがエンドポイントを公開してノードとの疎通に使用します。
  • ポート 7880監視エージェント が使用します。 報酬プログラム の一部に登録する場合に必要で、カスタマイズ可能です。

インストール

Symbol Bootstrap はインストール可能なツールとして提供されており、リポジトリからクローンやビルドする必要はありません。ターミナルまたはコマンドプロンプトから次を実行します:

npm install -g symbol-bootstrap

注釈:

設定

プリセット

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

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

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

プリセット 利用可能な構成 説明
mainnet peer ノードはハーベスタです (設定ファイル)
mainnet api ノードは mongo データベースと REST ゲートウェイを起動しています (設定ファイル)
mainnet dual ノードは mongo データベースと REST ゲートウェイを起動しています (設定ファイル)
bootstrap light mongo データベース 1 つ、デュアルピア 1 つ、REST ゲートウェイ 1 つを備えた bootstrap軽量バージョン です。高速な軽量 e2e 自動テストに最適です。ネメシスブロックが生成されます (設定ファイル)
bootstrap full これはデフォルトの bootstrap プリセットに、ウォレット 1 つ、エクスプローラ 1 つ、フォーセット 1 つを加えます。デモンストレーション目的に最適な構成です。 Nemesis ブロックが生成されます。 (構成ファイル)
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/preset.yml) が含まれています。

注釈

Linux では、ユーザが 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 オプション使用してサービスをデタッチモードで実行します。

次に symbol-bootstrap stop を使用して、それらを停止してください。

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

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

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

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

次の手順

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

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