LoginSignup
3
2

More than 5 years have passed since last update.

Hyperledger ComposerのTutorialを実行するために、Hyperledger ComposerとHyperledger Fabric 1.1を導入する手順

Last updated at Posted at 2018-05-15

本情報は、2018年5月15日時点です。

Hyperledger Composer、公式ドキュメントの指示通りにやって環境構築に失敗し挫折することが多いそうで、原因の1つに英語ドキュメントしかないというのもあると思いますが、Hyperledger Fabric 1.1 の環境構築手順の備忘録です。Hyperledger Fabric 1.0の環境構築はこちらになります。

Hyperledger ComposerとHyperledger Fabric 1.1を入れる

前提環境を整える

使用するOSは、「Ubuntu Server 16.04 LTS」です。ほとんどのクラウドサービスで採用されていますし、メーカーから購入できるサーバーでもサポート対象になっています。
Ubuntuベースで、Hyperledger Fabric 1.1 と関連ミドルウェアを入れるために必要な環境を構築していきます。Hyperledger Composer DocsのInstalling pre-requisites部分です。

Docker CEを入れる

sudo apt-get remove docker docker-engine docker.io
sudo apt-get update
sudo apt-get install apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt-get update
sudo apt-get -y install docker-ce
sudo docker -v
sudo usermod -aG docker $(whoami)

上記実行後、ログアウトし、再ログインします。

Docker Composeを入れる

sudo curl -L https://github.com/docker/compose/releases/download/1.21.2/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

Node.jsを入れる

Hyperledger Fabric 1.0ではNode.js 6.x系が必要でしたが、Hyperledger Fabric 1.1では、Node.js 8.x 系を使用します。

sudo apt-get update -y && sudo apt-get upgrade -y
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs gcc g++ make
curl -sL https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
sudo apt-get install yarn

関連npmとHyperledger Fabric 1.1を導入

Hyperledger Fabric 1.1を使用するには、composer 0.19.x系が必要です。
公式ドキュメントHyperledger Composer DocsのInstalling the development environmentの手順通りに実施するとエラーがでましたのでアレンジしています。

関連npmパッケージをインストール

sudo npm install composer-cli@0.19.4
sudo npm install -g --unsafe-perm composer-cli@0.19.4
sudo npm install -g --unsafe-perm composer-rest-server@0.19.4
sudo npm install -g --unsafe-perm generator-hyperledger-composer@0.19.4
sudo npm install -g --unsafe-perm yo
sudo npm install -g --unsafe-perm composer-playground@0.19.4

Hyperledger Fabric 1.1を導入

sudo service docker restart
mkdir fabric && cd fabric
curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.tar.gz
tar -xvf fabric-dev-servers.tar.gz
./downloadFabric.sh
./startFabric.sh
./createPeerAdminCard.sh

Hyperledger Fabric 1.1を使用しますので、Hyperledger Fabric 1.0のときのように、「startFabric.sh」を書き換える必要はなく、淡々と実行していきます。

「./createPeerAdminCard.sh」を実行することで下記のように表示されます。Command succeededと表示され、エラーが起きなければ成功です。

Development only script for Hyperledger Fabric control
Running 'createPeerAdminCard.sh'
FABRIC_VERSION is unset, assuming hlfv11
FABRIC_START_TIMEOUT is unset, assuming 15 (seconds)

Using composer-cli at v0.19.4

Successfully created business network card file to
        Output file: /tmp/PeerAdmin@hlfv1.card

Command succeeded


Successfully imported business network card
        Card file: /tmp/PeerAdmin@hlfv1.card
        Card name: PeerAdmin@hlfv1

Command succeeded

The following Business Network Cards are available:

Connection Profile: hlfv1
lqqqqqqqqqqqqqqqqqwqqqqqqqqqqqwqqqqqqqqqqqqqqqqqqk
x Card Name       x UserId    x Business Network x
tqqqqqqqqqqqqqqqqqnqqqqqqqqqqqnqqqqqqqqqqqqqqqqqqu
x PeerAdmin@hlfv1 x PeerAdmin x                  x
mqqqqqqqqqqqqqqqqqvqqqqqqqqqqqvqqqqqqqqqqqqqqqqqqj


Issue composer card list --card <Card Name> to get details a specific card

Command succeeded

Hyperledger Composer PeerAdmin card has been imported, host of fabric specified as 'localhost'

Playgroundの起動

Playgroundを実行します。コマンド実行後、Webブラウザで、http://localhost:8080/login にアクセスします。

$ composer-playground

これで環境構築できましたので、続きは公式ドキュメントのPlayground TutorialやDeveloper Tutorialを実施していきます。

3
2
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
3
2