cosmos gaia初体験


目次

  • 依存
  • 概要
  • ソースコードをダウンロードし、
  • をインストールします.
  • 加入主網
  • プロファイル
  • を生成する.
  • Genesis & Seeds
  • 起動ノード
  • パブリックテストネットワーク(Gaia-1307)
  • に加入
  • プロファイル
  • を生成する.
  • Genesis & Seeds
  • 起動ノード
  • 口座管理、検証者
  • ローカルテストネットワーク
  • を導入
  • 初期化Genesis
  • 認証アカウント
  • を作成
  • money
  • を追加
  • 創世取引
  • を生成
  • 生成された創世取引をgenesisファイル
  • に追加する
  • 起動
  • ノードアップグレード
  • 参照文書
  • に頼る


    go1.14+

    概要


    GaiaはCosmos SDKを用いて構築されたCosmos Hubの最初の実装である.Hubの役割はブロック鎖間の移動を促進することである.ブロックチェーンがIBCを介してHubに接続されている場合、ブロックチェーン間通信をサポートする他のすべてのブロックチェーンへのアクセス権が自動的に取得されます.

    ソースをダウンロードしてインストール


    現在の最新バージョンはv 2.0.10
      mkdir cosmos
      cd sosmos
      git clone -b v2.0.10 https://github.com/cosmos/gaia
      cd gaia && make install
    

    コマンドラインが使用可能かどうかを確認します
    $ gaiacli version --long
     name: gaia
    server_name: gaiad
    client_name: gaiacli
    version: 2.0.10
    commit: 46bc0060fe7a52abf9e2173d39fc2bfdb59971fb
    build_tags: netgo,ledger
    go: go version go1.13 linux/amd64
    

    GaiacliはGaiaコマンドラインツールで、Gaia全ノードとインタラクティブに
    $ gaiad version --long
    name: gaia
    server_name: gaiad
    client_name: gaiacli
    version: 2.0.10
    commit: 46bc0060fe7a52abf9e2173d39fc2bfdb59971fb
    build_tags: netgo,ledger
    go: go version go1.13 linux/amd64
    

    gaiadはGaiaデーモンであり、gaiaアプリケーションを実行する全ノードである.

    ホームネットワークへの参加


    プロファイルの生成


    gaiad initの後ろに名前がついています
    gaiad init pld_demo_01_moniker
    

    上記のコマンドを実行した後に~/.gaiad/config/config.tomlファイルを編集してmonikerの値gaiad initを変更して実行した後に生成できるファイルは以下の通りです.
    ├── app.toml
    ├── config.toml
    ├── genesis.json
    ├── node_key.json
    └── priv_validator_key.json
    

    Genesis & Seeds


    ダウンロードホストネットワーク創世構成(60 M)
    curl https://raw.githubusercontent.com/cosmos/launch/master/genesis.json > ~/.gaiad/config/genesis.json
    

    seedの変更
    vi ~/.gaiad/config/config.toml
    

    seedsを見つけて、メインネットワークpeerノードを追加して、カンマで分割します
    seeds = "[email protected]:26656,[email protected]:26656,[email protected]:26656"
    

    スタートノード


    (同期データは比較的に時間がかかり、現在主網の高さは200万余り)
    nohup gaiad start > gaia.log 2>&1 &
    

    現在のステータスの表示
    gaiacli status
    

    パブリックテストネットワークへの参加(Gaia-1307)


    プロファイルの生成


    構成の初期化、chain-idの設定に注意
    gaiad init pld_demo_02_moniker --chain-id=gaia-13007
    

    Genesis & Seeds


    ダウンロードテストネットワーク創世構成(2.3 M)
    curl https://raw.githubusercontent.com/cosmos/testnets/master/gaia-13k/13007/genesis.json > ~/.gaiad/config/genesis.json
    

    seedsを見つけて、メインネットワークpeerノードを追加して、カンマで分割します
    seeds = "[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656"
    

    スタートノード


    (同期データは比較的に時間がかかり、現在テストネットの高さは200万余り)
    nohup gaiad start > gaia.log 2>&1 &
    

    現在のステータスの表示
    gaiacli status
    

    アカウント管理、検証者


    アカウントを作成するには、8桁のパスワードを入力する必要があります
    gaiacli keys add  pld-demo
    

    アカウントの表示
    $ gaiacli keys list
    - name: pld-demo
      type: local
      address: cosmos1rnvhje672f59x88sxr8f5tj55qwg44r3s79c96
      pubkey: cosmospub1addwnpepqdqn86etl4jprlskyftjtek2j2tsnz0an0lxy9lnnff2v8p5jrtmzjvcf9u
      mnemonic: ""
      threshold: 0
      pubkeys: []
    

    アカウントの詳細
    $ gaiacli q account cosmos1rnvhje672f59x88sxr8f5tj55qwg44r3s79c96 --chain-id gaia-13007
    ERROR: {"codespace":"sdk","code":9,"message":"account cosmos1rnvhje672f59x88sxr8f5tj55qwg44r3s79c96 does not exist"}
    

    アカウントにはチェーン上の取引やデータが同期されていません
    チャットルームに行ってテストコインを取得する(エージェントが必要)https://riot.im/app/#/room/#cosmos-faucet:matrix.orgが入ったら、入力:show me the money!YOUR ADDRESS YOUR ADDRESSはあなたの財布の住所で、ロボットは自動的にあなたの住所にコインを転送します
    検証者公開鍵の表示(検証者の作成にはpubkeyが必要)
    gaiad tendermint show-validator
    

    検証者の作成
    gaiacli tx staking create-validator \
    --amount=25muon \
    --pubkey=cosmosvalconspub1zcjduepq0wkd0ru6mppc0dkxu0yx98vfcptuye7udr8cshf3m62rc596255quyw400 \
     --moniker=hongmin \
     --chain-id=gaia-13007 \
     --sequence=0  \
     --commission-rate=0.05 \
     --commission-max-rate=0.2 \
     --commission-max-change-rate=0.1 \
     --min-self-delegation=1 \
     --from=cosmos1rnvhje672f59x88sxr8f5tj55qwg44r3s79c96
    

    検証者情報の変更(24時間後に変更可能)
    gaiacli tx staking edit-validator \
      --moniker=“pod” \
      --website="https://pld.network" \
      --details="To infinity and beyond" \
      --chain-id=gaia-13007 \
      --from=cosmos1rnvhje672f59x88sxr8f5tj55qwg44r3s79c96\
      --commission-rate="0.10"
    

    ブロックチェーンブラウザでアドレスまたは取引情報を表示する(Gaia-1307テストネットワーク)https://gaia.bigdipper.live/

    ローカルテストネットワークの導入


    初期化Genesis

    gaiad init --chain-id=testing testing
    

    認証アカウントの作成

    gaiacli keys add validator
    

    moneyを追加

    gaiad add-genesis-account $(gaiacli keys show validator -a) 1000000000stake,1000000000validatortoken
    

    創世取引の生成

    gaiad gentx --name validator
    

    生成された創世取引をgenesisファイルに追加

    gaiad collect-gentxs
    

    開始

    nohup gaiad start > gaia.log 2>&1 &
    

    ノードのアップグレード


    データの削除
    rm ~/.gaiad/config/addrbook.json ~/.gaiad/config/genesis.json
    gaiad unsafe-reset-all
    

    最新バージョンのダウンロードとインストール
    git clone https://github.com/cosmos/gaia.git
    cd gaia
    git fetch --all && git checkout master
    make install
    

    リファレンスドキュメント


    https://hub.cosmos.network/master/gaia-tutorials/https://github.com/cosmos/gaia https://github.com/cosmos/testnets https://github.com/cosmos/testnets/tree/master/gaia-13k/13007