fabric: 搭建explorer

Fabric提供了一个官方的浏览器:https://github.com/hyperledger/blockchain-explorer

按照其方法搭建即可。

首先选择合适的explorerer版本,然后下载其docker镜像,比如我们选择了1.1.8版本:

docker pull hyperledger/explorer:1.1.8

创建docker-compose.yml文件:请戳

文件中三个重要的目录:

  • config.json。是explorerer的配置入口
  • connection-profile。这是个目录,是各个网络的具体配置,基本思路是explorer可以连接到不同的fabric网络,不同的网络配置就放在connection-profile目录下,explorerer启动时,config.json会获取具体connection-profile中的内容,连接到不同的fabric网络,有意思的时,explorer还可以同时连接到多个fabric网络
  • msp目录。explorer访问fabric网络的时候,要拥有一定的权限,需要具备msp目录的访问权,explorer甚至需要访问msp中的密钥。

配置好了之后,启动就可以了

docker-compose up

本文完整的配置放在github上。请戳

需要注意:

  1. 尽量按照格式来,一个都不要配置错误,我就是因为把org节点下的peers给漏了,结果就无法创建钱包,而且没有任何提示信息,我只好肝了一天,玩命debug,才爬出大坑
  2. 注意是否开启tls,这个也很关键,要配合具体网络是否是tls的。本例是没有开启tls的。

connection profile

fabric网络是由不同的组织构成的,不同组织之间从业务上应该是相互隔离的,因此explorer对不同组织观察的信息应该不一样。

换句话讲,在一个fabric网络中,有很多orderer, peer和channel,可以配置explorer只观察特定的orderer, peer或者channel信息。这种指定的配置叫做profile,即上面的connection-profile文件下的各种json文件。

比如本例中的profile片段,指定了要观察的channel, organization, peer和orderer

    "channels": {
        "channel1": {
            "peers": {
                "peer1.dev": {}
            }
        }
    },
    "organizations": {
        "Dev": {
            "mspid": "Dev",
            "adminPrivateKey": {
                "path": "/tmp/crypto/admin-dev/msp/keystore/admin-dev.key"
            },
            "peers": ["peer1.dev"],
            "signedCert": {
                "path": "/tmp/crypto/admin-dev/msp/signcerts/admin-dev.crt"
            }
        }
    },
    "peers": {
        "peer1.dev": {
            "tlsCACerts": {
                "path": "/tmp/crypto/peer1-dev/msp/tlscacerts/root-dev.crt"
            },
            "url": "grpc://peer1.dev:8050"
        }
    },
    "orderers": {
        "orderer.dev": {
          "url": "grpc://orderer.dev:7050"
        }
    }

可在config.json中指定多个profile, 观察不同的信息:

{
  "network-configs": {
    "org1-network": {
      "name": "org1-network",
      "profile": "./connection-profile/org1-network.json"
    },
    "org2-network": {
      "name": "org2-network",
      "profile": "./connection-profile/org2-network.json"
    }
  },
  "license": "Apache-2.0"
}

Ref



《“fabric: 搭建explorer”》 有 1 条评论

回复 agodelo 取消回复

您的邮箱地址不会被公开。 必填项已用 * 标注

About Me

一位程序员,会弹吉他,喜欢读诗。
有一颗感恩的心,一位美丽的妻子,两个可爱的女儿
mail: geraldlee0825@gmail.com
github: https://github.com/lisuxiaoqi
medium: https://medium.com/@geraldlee0825