Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

0801 _ Cosmos SDK チュートリアル #4

Open
ma96o opened this issue Aug 1, 2022 · 2 comments
Open

0801 _ Cosmos SDK チュートリアル #4

ma96o opened this issue Aug 1, 2022 · 2 comments

Comments

@ma96o
Copy link
Owner

ma96o commented Aug 1, 2022

今日は,Cosmos SDK のチュートリアルを進めていた.

Cosmos SDK は,ブロックチェーンを開発するための開発キットで,
Cosmos Networkに対応するブロックチェーンを比較的簡単に作れる.
開発は Go言語 で行う,Rustでも開発できるみたい.
TerraSecret Network などが Cosmos SDK を使って構築されていて,ソースコードを読むと勉強になる.

具体的には Cosmos SDK の開発者向けインターフェイスである Ignite CLI を用いて開発を行う.
ブロックチェーンの機能は,提供されるモジュールを利用することで実装できる.
モジュールは /x で確認できる.

主要なモジュールは以下.

  • Tendermintモジュール
    • コンセンサスエンジンを管理
  • IBCモジュール
    • IBCへの対応
  • Authモジュール
    • アカウントを管理
  • Bankモジュール
    • その各アカウントが持つトークン残高を管理
  • Govモジュール
    • ガバナンスを管理
  • Stakingモジュール
    • Stakingに関する機能を提供

ローカルでテストするためのコマンドが提供されていて,$ ignite chain serveでテストネットを起動できる.
ただ,実行で躓いている.
上記コマンドを実行すれば,ソースコードをプロジェクト名のバイナリにコンパイルしてくれて,プロジェクト名(チェーン名)+d(例えば checkersというチェーンなら $ checkersd)というコマンドを利用できる,とあるのだが command not foundエラーで実行できない.
ref. https://tutorials.cosmos.network/academy/3-my-own-chain/ignitecli.html#

このコマンドが使えないと,トランザクションを実行できないのでもう少し粘ってみる.

@ma96o
Copy link
Owner Author

ma96o commented Aug 1, 2022

ignite chain serveignite chain build コマンドは、チェーンのソースコードをバイナリファイルにコンパイルし、バイナリを ~/go/bin にインストールします。デフォルトでは、バイナリ名はリポジトリの名前にdをつけたものです。例えば、ignite scaffold chain github.com/alice/chain を使ってチェーンをscaffoldした場合、バイナリ名は chaind となります。
https://docs.ignite.com/kb/serve#start-a-blockchain-node-in-production

コンパイルしたバイナリファイルは, ~/go/bin にインストールされるぽい?

ちなみに,バイナリ名は config.yml でカスタマイズできる

build:
  binary: "newchaind"

@ma96o
Copy link
Owner Author

ma96o commented Aug 1, 2022

$ ~/go/bin/checkersd で実行できた.
~/go/bin のパスが通ってない問題やったか・・

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant