技術情報

Hyperledger Composerのチュートリアルをやってみる

Blockchain 技術情報 Hyperledger Composer

はじめに

PoCが一段落し、さらにブロックチェーンを使って実装の知識を深めるにあたり、Hyperledger ComposerというものがあることをPoCチームメンバに教えてもらいました。
Hyperledger Composerとは何か?についてはこちらに記載がありますので、ご参照ください。
ざっくり言うと、「ブロックチェーンアプリケーションを素早く作成するための開発フレームワーク」です。

おおまかな流れとしては、以下のようなイメージでアプリを作成できるようです。

  1. Hyperledger Composerを使用して、モデル、スクリプト、アクセス制御、クエリファイルで構成されたビジネスネットワーク定義を作成する。
  2. 1.のビジネスネットワーク定義をパッケージ化し、アーカイブとしてエクスポートしたものを、Hyperledger Fabricなどに展開する。

上記についてチュートリアルを進めて理解を深めていきます。

環境構築

前提条件として、開発環境を構築しておく必要があります。こちらを参照して、環境構築を行います。
Mac の場合はこちらも参考に構築します。

「Step 1: Installing Hyperledger Composer development tools」まで進めておきます。
最終的に、自分の環境は以下のようになりました。

– Operating Systems: macOS Sierra Version 10.12.6
– Docker Engine: Version 17.0.9.0-ce-mac35(19611)
– Docker-Compose: Version 1.11.2
– Node: v6.9.5
– npm: v3.10.10
– git: 2.11.0
– Python: 3.5.0
– VSCode: 1.18.0(Hyperleger Composerの拡張: 0.15.0)

Hyperledger Fabricの起動

Step 2: Starting Hyperledger Fabricを参考に、先に展開先のHyperledger Fabricを起動しておきます。

・必要なファイルのダウンロードと解凍

・起動

チュートリアル

チュートリアルはいくつかありますが、今回はDeveloper Tutorial for creating a Hyperledger Composer solutionをやってみます。

ステップ1:ビジネスネットワーク構造の作成

環境構築が完了したら、ステップ1から進めていきます。
Yeomanを使用して、スケルトンのビジネスネットワークを作成します。
以下のコマンドを実行し、対話形式で必要な情報を設定していきます。

以上でスケルトン完成です。
「tutorial-network」というディレクトリができているので、これをVSCodeで開いておきます。

ステップ2:ビジネスネットワークの定義

・モデルの定義
「models」ディレクトリ下にある「org.acme.biznet.cto」ファイルを開き、以下のように書き換えます。
言語の説明はHyperledger Composer Modeling Languageが参考になります。

・スクリプト追加
続いて、「lib」ディレクトリ下にある「logic.js」ファイルを開き、以下のように書き換えます。

・アクセス制御
「tutorial-network」ディレクトリ下に「permissions.acl」ファイルを作成し、アクセス制御のルールを追加します。

ステップ3:アーカイブ作成

ここからはコマンドライン操作に戻ります。
コマンドラインで「tutorial-network」ディレクトリへ移動し、以下のコマンドを実行します。

成功すると、同ディレクトリに「tutorial-network@0.0.1.bna」ができあがります。

ステップ4:デプロイ

こちらで起動したHyperledger Fabricにデプロイします。以下のコマンドを順に実行していくだけです。

1. composer runtimeをインストールする。

2. ビジネスネットワークを展開する。

3. ネットワーク管理者IDをインポートする。

4. 正常に展開されたか確認する。

ステップ5:RESTサーバ生成

以下のコマンドを実行するだけです。

「http://localhost:3000」にブラウザでアクセスしてみると、このような画面が出てきます。

それぞれのAPIにある「Try it out!」ボタンをクリックすると、APIを実行することができます。

Hyperledger Fabricの終了

起動したHyperledger Fabricを終了するには、以下のコマンドを実行します。

まとめ

以上で一通りチュートリアルが完了しました。
思ったよりも簡単にブロックチェーンアプリが作成できました。

ブロックチェーンを使って何か作ってみたいけど敷居が高そう…と敬遠されている方も、Hyperleger Composerなら簡単に作成することができるので一度試してみることをオススメします。

The following two tabs change content below.
Blockchain Online 編集部
「北海道をブロックチェーン技術の集積地とし、ブロックチェーン技術を活用した新しいビジネスを創出する」をビジョンに掲げる一般社団法人ブロックチェーンイノベーションプログラム(BHIP)が本サイトを運営しています。 https://blockchain-jp.com/bhip

Pickup post

  1. ブロックチェーンを活用した医薬品のデッドストック販売プラットフォーム PoC […
  2. 【満席御礼】2018年3月1日開催 無料セミナー 《ブロックチェーンフェスティ…
  3. ブロックチェーンの技術:公開鍵暗号
  4. ブロックチェーンの基本的な仕組み

Related post

  1. Blockchain 技術情報

    技術情報

    DockerでHyperLedger Fabricの実行環境を構築する(v0.6.1向け)

    はじめまして。最近BlockChainを触り始めたlumberです。…

  2. Blockchain 技術情報 Hyperledger Composer

    技術情報

    Hyperledger Composer クエリチュートリアルをやってみる その1

    はじめに今回の目的は、ビジネスネットワーク定義後の次のステップとし…

  3. 技術情報

    Hyperledger Fabric vs Hyperledger Composer

    はじめに今回はHyperledger FabricとHyperle…

  4. Blockchain 技術情報

    技術情報

    JSON-RPC API で geth を便利に使う

    ブロックチェーンは、今後多くのサービス・システムに利用されることが期待…

  5. Ethereum

    技術情報

    Ethereumで複数ノードをつなげてプライベートネットワークを作ってみる

    以前本Blog内にて各OS別Ethereumのインストール及び簡単な操…

  6. Blockchain 技術情報 Hyperledger Composer

    技術情報

    Hyperledger Composerクエリチュートリアルをやってみる その2

    はじめに今回の目的は、「その1」で更新したビジネスネットワークを使…

Comment

  1. 本記事に対するコメントはまだありません

  1. 本記事に対するトラックバックはまだありません

最近の記事

おすすめ記事

  1. ブロックチェーンを活用した医薬品のデッドストック販売プラット…
  2. ブロックチェーンの基本的な仕組み
  3. 【満席御礼】2018年3月1日開催 無料セミナー 《ブロッ…
  1. ブロックチェーンでつながる世界

    ブロックチェーンのメリット

    ブロックチェーン技術の適用が期待されるサービス
  2. hash function

    ブロックチェーンとは

    ブロックチェーンの技術:ハッシュ関数
  3. データセンター

    ブロックチェーンとは

    ブロックチェーンと分散型データベースの違い
  4. ブロックチェーンセミナー4月

    イベント情報

    満員御礼★【参加無料】4月7日開催!「ブロックチェーン」の基本を学ぶ初心者向けセ…
  5. 2018 IBMブロックチェーンオンラインセミナー

    トピックス/業界動向

    ビジネスを変える! IBMブロックチェーン解説セミナーのご案内
PAGE TOP