Feeds:
文章
迴響

最近有機會用 Azure 的 BaaS 試用 Hyperledger Fabric, 稍微紀錄一下, 建立流程很簡單诶什麼特別(少打了很多指令)

選擇 Hyperledger 模板

基本配置

Fabric 配置

資料確認

確定建立

完成上面的精靈導引後就會得到一大坨的資料

建立完成的 Resource Group

SSH 連線資訊可透過下面位置取得

確認一下 Fabric 版本(對~ VM 裡面還是 docker)

fabric-peer 版本 1.0.1

fabric-ca 版本 1.0.1

fabric-orderer 版本 1.0.1

所以 Fabric 本來跑在單台 docker 的變成多台 docker… 對於應用來說沒什麼差別, 預設建立的 Fabric 沒有啟用 TLS 也沒有 couchdb, 從安裝腳本 configure-fabric-azureuser.sh 可以查看 docker container 啟動參數

在 user home 目錄下有需要的相關檔案

+ ~/crypto-config   ; 認證相關資料 
- channel.tx 
- config.log
- configtx.yaml
- configure-fabric-azureuser.sh
- orderer.block

不過奇怪的是內建的 peer 工具居然不能用, 有點冏

還好我用的是自己的工具, 跑完基本測試, 安裝 chaincode 後, 如預期的 Peer VM 新增了 chaincode container

佈署 chaincode 後 Peer VM 的 container

一如預期的執行範例 ^^

 

廣告

最近嘗試了這個 Hyperledger 實驗項目, 這個項目主要是高度抽象化開發流程, 讓你可以專注在商業流程而不用太關注 Fabric 底層. 在 Balance Transfer 的網路上佈署成功應該可以看到. 第一次佈署成功還蠻爽的~~

開發環境

1. node 6.9.0 (docker)

安裝工具

npm i -g composer-c;o

Clone 範例

git clone https://github.com/hyperledger/composer-sample-networks.git

打包 .bna

cd composer-sample-networks/packages

composer archive create -t dir -n carauction-network

成功應該會輸出一個 carauction-network@0.1.6.bna

產生 Fabric 連線配置檔

佈署 .bna 到 Fabric

composer network deploy -a carauction-network@0.1.6.bna -i admin -s adminpw -l INFO -p balance-transfer

-p 指定的名稱會使用 ~/.composer-connection-profiles/balance-transfer/connection.json 連線配置

順利就會看到開頭的那張結果

測試

composer network list -p balance-transfer -n carauction-network -i admin -s adminpw

composer network ping -p balance-transfer -n carauction-network -i admin -s adminpw

REST API

composer-rest-server -p balance-transfer -n carauction-network -i admin -s adminpw -N always -S false -w false -t false -P 4000

zwlopnf

 

已經不是第一次手殘…  更新完啟動 VM 就出現

嘗試網路解法重裝 VBoxDrv.inf

可惜無效,

查看 Log 訊息

沒什麼可用的解法…. 最終退回 5.1.14-112924 版本… 解決

範例原始碼, 順利把 TODO 範例整合到我的 Fabric 網路

整合上比 marbles 簡單許多

 

marbles 專案入口, 蠻有視覺化效果的範例, 嘗試整合到 balance transfer 的網路, 試了幾天終於成功接起來了

Peer 節點需要設定環境變數 CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS=couchdb0:5984

之前使用 0.46.x 版本, 恰逢 0.47.x 釋出, 就來跑一下流程, 詳細可參考Upgrading to new React Native versions

  1. 安裝 react-native-git-upgrade 工具
    • yarn global add react-native-git-upgrade
  2. react-native 套件升級
    • yarn add react-native@0.47.0
  3. 專案升級
    • react-native-git-upgrade
  4. 重新打包 js bundle
  5. 重新產生 apk