zoukankan      html  css  js  c++  java
  • Hyperledger Fabric——balance transfer(一)启动示例

    Blacne transfer是Hyperledger fabric Node SDK的一个示例应用,主要使用了SDK中fabric-client 和 fabric-ca-client 模块中的API,实现了与Fabric网络交互的各种操作。

    先决条件

    • Docker - v1.12 or higher
    • Docker Compose - v1.8 or higher
    • Git - needed for clone commands
    • Node.js - v8.4.0 or higher
    • Docker images
    • jq - needed for execute the test script

    下载示例

    需要注意的是 balance transfer 示例不同版本间差别很大,从v1.0.6到v1.1.0就存在很大改动,这里使用的是最新版本release-1.1。

    git clone https://github.com/hyperledger/fabric-samples.git
    cd fabric-samples/balance-transfer
    

    运行示例

    与之前运行的Fabric项目中的samples相比,e2efirst-network这两个例子是通过一个cli容器来模拟客户端与网络进行交互。而balance-transfer则会监听一个端口,用户可以通过curl命令、浏览器等工具根据URL来进行相应操作。
    示例可通过脚本运行,构建一个本地的Fabric网络,所有节点包括:

    • 2 CAs
    • 1 SOLO orderer
    • 4 peers (2 peers per Org)
    方法一

    在终端1执行脚本:

    ./runApp.sh
    
    • 启动本地fabric网络
    • 下载fabric-client 和 fabric-ca-client 模块
    • 监听4000端口

    在终端2测试网络,执行测试脚本前需下载jq

    sudo apt-get install jq
    ./testAPIs.sh
    
    
    • 创建channel并加入节点
    • 安装和实例化chaincode
    • 执行(invoke)chaincode
    • 进行各种查询(query)
    方法二

    在终端1执行:

    docker-compose -f artifacts/docker-compose.yaml up
    

    在终端2执行命令,下载fabric-client 和 fabric-ca-client 模块:

    npm install
    

    运行node app,监听4000端口:

    PORT=4000 node app
    

    在终端3通过curl命令进行测试。

    报错解决

    注意:balance transfer 的版本应该与镜像文件的版本相匹配,否则会出现错误。
    比如我的镜像文件下载的是v1.0.0,而fabric-samples项目没有此版本(使用git tag查看),则在注册用户的第一步就出现错误No identity type provided

    No identity type provided. Please provide identity type
    

    则需要重新下载相应版本的镜像,并切换fabric-samples的版本使两者保持一致 ( git checkout v1.1.0 )。

    关闭网络

    # 清除所有容器
    docker rm -f $(docker ps -aq)
    # 删除chaincode镜像
    docker rmi -f $(docker images | grep dev | awk '{print $3}')
    # 删除用户注册和登录的数据,如私钥和证书
    rm -rf fabric-client-kv-org[1-2]
    

    参考:http://www.cnblogs.com/studyzy/p/7437157.html

  • 相关阅读:
    WinCE下SQLCE数据库开发(VS,VB.net,VC++)
    基于VC++的WinCE网口通信
    WinCE下的串口通信开发(VS2005,VB.Net,VC++)
    多线程CSerialPort类的多串口通信实现
    双T滤波电路用于PWM方式DAC的分析
    AD9516锁相环功能外接环路滤波器的设计与分析
    块结构中断有序化处理方法(一种单片机单线程方式下处理多中断的方法)
    STM32F10X固件库函数——串口清状态位函数分析
    STM32和STR71X移植uCos-II操作系统比较分析
    基于uIP和uC/OS-II嵌入式网络开发
  • 原文地址:https://www.cnblogs.com/zhayujie/p/12941559.html
Copyright © 2011-2022 走看看