見出し画像

【完全保存版】Substrateを使って、特定のノードを指定して、ブロックチェーンを立ち上げよう!

この記事は、下の記事の続きの位置付けです。

先に下の内容をやっていただければ幸いです。

なお、こちらの内容は、 Substrate公式ドキュメントをもとにしています。

1 1つ目のノード(Alice)を立てる

1 古いデータの削除

一つ目のノードを立てる前に、次のコマンドで、古いデータを削除します。

./target/release/node-template purge-chain --base-path /tmp/alice --chain local

2 ローカルノードを立てる

続いて、次のコマンドで、Aliceのノードを立てます。

./target/release/node-template \
--base-path /tmp/alice \
--chain local \
--alice \
--port 30333 \
--ws-port 9945 \
--rpc-port 9933 \
--node-key 0000000000000000000000000000000000000000000000000000000000000001 \
--telemetry-url "wss://telemetry.polkadot.io/submit/ 0" \
--validator

下のように、ノードが立ち上がりました。

「Local node identity」がこのノードの識別番号です。

ちなみに、コマンドのオプションは次のようになります。

「--alice」でアカウントを指定し、「--validator」でこのアカウントをバリデータに設定することを示しています。

こちらでポートを指定しています。

下の場合、ノード間でのやり取りに用いるのは、「30333」です。

その他、web socket, RPC用のポートを指定しています。

3 ネットワークの状態の確認

では、ネットワークの状態を確認してみましょう。

「Idle」となっており、動いていないことがわかります。

これは、現在バリデータが一つしか動いていないためです。

2 2つ目のノード(Bob)を立てる

1 古いデータの削除

まずは、古いデータを削除します。

これは1つ目のノードの時と同じです。

./target/release/node-template purge-chain --base-path /tmp/bob --chain local

2 ローカルノードを立てる

では、Bobのノードを立てましょう。

基本的にはAliceと同じです。

ただし、ポート番号が被らないように注意します。

./target/release/node-template \
--base-path /tmp/bob \
--chain local \
--bob \
--port 30334 \
--ws-port 9946 \
--rpc-port 9934 \
--telemetry-url "wss://telemetry.polkadot.io/submit/ 0" \
--validator \
--bootnodes /ip4/127.0.0.1/tcp/30333/p2p/12D3KooWEyoppNCUx8Yx66oV9fJnriXwCcXwDDUA2kj6vnc6iDEp

また、Bobのノードは2つ目なので、すでに存在している、Aliceのノードを「boobnodes」で指定します。

3 ネットワークの状態の確認

では、先ほどまで、「Idle」状態であった、「Alice」のターミナルから見てみましょう。

下のように、ブロックが動き出したことが確認できました。

以上です。

サポートをしていただけたらすごく嬉しいです😄 いただけたサポートを励みに、これからもコツコツ頑張っていきます😊