1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

DataSpiderSDKとHyperledger Fabric

Last updated at Posted at 2023-02-12

今回から、数回にわたりDataSpiderSDKを用いてHyperledger Fabricとデータ連携するためのアダプタの実装例について紹介したいと思います。
初回は、まずはHyperledger FabricのJavaライブラリとHyperledger Fabricが提供するテストネットの環境を用意します。

ビルド環境とテストネット環境

以下の環境およびモジュール類を揃えます。

  • Windows 10
  • Java SDK ver.8
  • Apache Maven Ver.3.8.6
  • Git for Windows (GitBashも使用します)
  • Node v16.13.0
  • Python 2.7
  • Docker Desktop

Javaライブラリのビルド

DOSプロンプトを開きHyperledger-fabricのgithubからclone します。執筆時は最新バージョンがv1.2でしたので併せてタグも指定します。

git clone https://github.com/hyperledger/fabric-gateway.git -b v1.2.0
cd fabric-gateway\java
mvn install -Dmaven.test.skip=true

java\targetディレクトリ下に「fabric-gateway-1.2.0-SNAPSHOT.jar」が生成されていればビルドの完了です。

Hyperledger Fabricテストネット環境構築

Dockerを用いてテストネット環境を構築します。
用意したテストネットDocker上にサンプルのスマートコントラクトをデプロイします。
スマートコントラクトはtypescript版をデプロイします。

GitBashを開き、以下のコマンドを実行します。

git config --global core.autocrlf false
git config --global core.longpaths true
curl -sSLO https://raw.githubusercontent.com/hyperledger/fabric/main/scripts/install-fabric.sh && chmod +x install-fabric.sh
./install-fabric.sh d s b
cd fabric-samples/test-network
./network.sh up createChannel -ca
cd ../asset-transfer-basic/chaincode-typescript
npm install
cd ../../test-network
./network.sh deployCCAAS  -ccn basic -ccp ../asset-transfer-basic/chaincode-typescript

上記のコマンドで、Hyperledger Fabricの基本的な環境とテストで使用するスマートコントラクトのセットアップが完了です。

Dockerの起動状況の確認

Gitbash画面から以下のコマンドを実行します。

$ docker ps
CONTAINER ID   IMAGE                               COMMAND                  CREATED              STATUS              PORTS                                                                    NAMES
fbd6d1d8bab9   basic_ccaas_image:latest            "/tini -- /usr/src/a…"   8 seconds ago        Up 7 seconds        9999/tcp                                                                 peer0org2_basic_ccaas
d88bac1e6599   basic_ccaas_image:latest            "/tini -- /usr/src/a…"   10 seconds ago       Up 9 seconds        9999/tcp                                                                 peer0org1_basic_ccaas
9397f3df007f   hyperledger/fabric-tools:latest     "/bin/bash"              About a minute ago   Up About a minute                                                                            cli
5629adb8f1de   hyperledger/fabric-orderer:latest   "orderer"                About a minute ago   Up About a minute   0.0.0.0:7050->7050/tcp, 0.0.0.0:7053->7053/tcp, 0.0.0.0:9443->9443/tcp   orderer.example.com
05cf03e3a034   hyperledger/fabric-peer:latest      "peer node start"        About a minute ago   Up About a minute   0.0.0.0:9051->9051/tcp, 7051/tcp, 0.0.0.0:9445->9445/tcp                 peer0.org2.example.com
8de9fd0de3fe   hyperledger/fabric-peer:latest      "peer node start"        About a minute ago   Up About a minute   0.0.0.0:7051->7051/tcp, 0.0.0.0:9444->9444/tcp                           peer0.org1.example.com

Dockerのサービスの終了

./network.sh down

次回は

テストネットとして各サービスを立ち上げました。次回は、これらのサービスの概要と、DataSpiderSDKを用いたグローバルリソースの実装例を紹介したいと思います。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?