Help us understand the problem. What is going on with this article?

Docker内のUbuntu上のHyperLedger Fabric 1.1 Composerでチュートリアルを実施&REST APIで公開してみた。

More than 1 year has passed since last update.

概要

https://qiita.com/mogiken/items/be2317b07a41f494a494 で構築したDocker環境のHyperLedgerでチュートリアルを実施しました。
そのあとREST APIで公開するまでの手順です。
タイムアウトが出るときはEXPORT設定やインスタンスの状態をチェック。
yoコマンドはrootでは動かないので注意。

PlaygroundのConnection: Web Browserのチュートリアル

参考:https://hyperledger.github.io/composer/latest/tutorials/playground-tutorial.html
Playgroundを起動してブラウザからhttp://localhost:8080/ でアクセスします。
「Connection: Web Browser」の「Deploy a new business network」からチュートリアルの通り作成します。特に問題なく動作します。
この環境はブラウザ上で実行しているだけ。デバッグ用です。ここで開発・動作確認します。

Playgroundで動作完了したらサーバー環境にDeployします。

参考:https://hyperledger.github.io/composer/latest/tutorials/developer-tutorial.html
基本、コマンドラインで実行しまう。PlaygroundにそれらしいUIはありますが、動きが不安定です。Web BrowserでExportしたカードもインポートできません。

yoコマンドがrootで実行できないのでfabricアカウントでテンプレートを作成したあとrootにコピーして使います。
$ adduser fabric パスワードもfabric
$ su fabric
$ cd
$ yo hyperledger-composer:businessnetwork #下記のように入力
? Business network name: tutorial-network
? Description: test
? Author name: mogi
? Author email: mogi@gashfara.com
? License: Apache-2.0
? Namespace: org.example.mynetwork
$ exit #rootにもどって作成したテンプレートを編集する。
$ cd ~/fabric
$ mv /home/faric/tutorial-network .
$ vim tutorial-network/models/org.example.mynetwork.cto
チュートリアルのようにモデルを編集します。
vim tutorial-network/lib/logic.js
チュートリアルのようにスクリプトを編集します。
vim tutorial-network/permissions.acl
チュートリアルのようにアクセス権を編集します。
$ cd tutorial-network
$ composer archive create -t dir -n .
ファイル tutorial-network@0.0.1.bna が作成される。
このカードをサーバーにdeployします。
$ composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.1.bna
$ composer network start --networkName tutorial-network --networkVersion 0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card
このタイミングでDockerのインスタンスが1つ増えます。
$ composer card import --file networkadmin.card
$ composer network ping --card admin@tutorial-network
playgroundで登録が確認できます。

REST APIの公開

$ cd ~/fabric
$ composer-rest-server  #下記のように入力
? Enter the name of the business network card to use: admin@tutorial-network
? Specify if you want namespaces in the generated REST API: never use namespaces
? Specify if you want to use an API key to secure the REST API: No
? Specify if you want to enable authentication for the REST API using Passport: No
? Specify if you want to enable event publication over WebSockets: Yes
? Specify if you want to enable TLS security for the REST API: No

ブラウザから http://localhost:3000/explorer で表示できます。

スクリーンショット 2018-06-23 19.11.03.png

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away