zoukankan      html  css  js  c++  java
  • 根据已有网络安装fabric-explorer插件


     

    1、环境准备:

    l nodejs 6.9.x(不支持v7.x

    l mysql 5.7或更高版本

    l Hyperledger Fabric 1.0

     2、跑通网络:

    假设现在你已经跑通你的fabric网络,现在想根据已有的fabric网络,使用fabric-explorer插件,实现对底层网络的具体化展示和实时化查询。

    注意fabric-explorer的配置文件(app/network-config.json)有对ca节点的描述。我之前网络没有ca节点,尝试删除相关ca节点的配置,发现运行./start.sh时报错。因此在跑通网络前就需要设置ca节点,以便网络跑通时存在ca节点并能够正常完成功能。

    如果没有跑通网络,可以根据以下去按步骤完成:

     根据官方文档

     http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html

    和深蓝的博客

    http://www.cnblogs.com/studyzy/p/7451276.html

    进行交易之后对a进行查询得出的结果:

     

    图一:对a进行查询

    如图刚开始生成了四个peer节点,一个orderer节点和一个cli共六个容器。然后在Org1上的peer0节点和Org2上的peer1节点实例化链码,生成两个节点。

       

    :查看容器

    3.下载安装fabric-explorer项目:

    参考官方文档,

    https://github.com/hyperledger/blockchain-explorer

    跳过fabric network setup步骤。

    下载整个项目

    git clone https://github.com/hyperledger/blockchain-explorer.git

    cd blockchain-explorer

     

    :下载fabric-explorer

     

    4.创建数据库:

      在blockchain-explorer 目录下执行:

    mysql -u <username> -p < db/fabricexplorer.sql

    5.运行blockchain-explorer

    修改config.json

    参数解析:

    “host”“port”:是你的explorer所运行的地址和可以被浏览器监听到的端口。这里是运行在本机上的,所以设置为localhost8080

    ”channelsList“:通道列表,根据参数名猜测支持多通道。这里填写你之前运行网络时的设置的通道名。

    “GOPATH”,即Go的工作目录,设置为你自己的。

    “keyValueStore”,在启动这个项目时会自动生成的一个临时文件,在运行start.sh时会删除,start.sh里面有如下命令rm -rf /tmp/fabric-client-kvs_peerOrg*

    “enableTls”Tls好像是关于安全的。这里可以设置为false

    “users”:不清楚相关功能,猜测是ca节点的帐号和密码。因为在启动网络的时候,可以发现ca节点里面有这个命令:    command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/d4b0309bf140f39d60934b070462affea09d24464ee3b0005bc2c75a4e2d83c4_sk -b admin:adminpw -d'

    ”mysql“mysql的一些配置。需要修改的就是你设置的mysql帐号密码。

    修改app/network-config.jsonapp/network-config-tls.json

    这个根据config.json里面的enableTls参数而定。如果这个参数设置为true,那么explorer运行是就会只加载app/network-config-tls.json,如果是false,就会只加载app/network-config.json

    这里修改app/network-config.json

    发现一些证书路径指定在/fabric-docker-compose-svt目录下,所以把你启动网络时生成的crypto-config文件夹拷贝至/fabric-docker-compose-svt目录下。

     

    网络的证书文件拷贝只指导目录

    下载node执行时依赖的库

    npm install

    npm会根据你所在目录下package.json来下载需要依赖的库,保存在node_modules文件夹下。整个过程会有一些warn,不影响使用。

     

    :下载node运行时依赖的库

    l 修改 ./start.sh

    由于start.sh log输出重定向到log.log文件,不能实时查看相关信息,因此可以修改start.sh

    node main.js >log.log 2>&1 &

    node main.js的输出重定向到log.log文件,即输出内容不打印到屏幕上,而是输出到log.log文件中。2>&1 是将标准出错重定向到标准输出,这里的标准输出已经重定向到了log.log文件,即将标准出错也输出到out.file文件中。最后一个& , 是让该命令在后台执行。

    因此删除最后一行的 >log.log 2>&1 &

    运行start.sh

    ./start.sh

    终端会有log输出:

    Please open Internet explorer to access http://localhost:8080/

    firefox输入这个网址,即可看到相应的界面。

     

    图六fabric-explorer展示界面

      

  • 相关阅读:
    错误1053:服务没有及时响应启动或控制请求
    错误号码2003 Can't connect to MySQL server 'localhost' (0)
    分析slow-log 每小时慢sql情况
    用spring annotation声明的bean,当打包在jar中时,无法被扫描到
    mysql 锁查看
    linux 使用expect
    tomcat启动报错:java.lang.ClassNotFoundException:org.springframework.web.context.ContextLoaderListener
    Spring LDAP authenticate method with Pooling
    一步步教你使用Proguard混淆Java源代码
    JAVA获取CLASSPATH路径
  • 原文地址:https://www.cnblogs.com/610553824lyx/p/9305037.html
Copyright © 2011-2022 走看看