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上。请戳
需要注意:
- 尽量按照格式来,一个都不要配置错误,我就是因为把org节点下的peers给漏了,结果就无法创建钱包,而且没有任何提示信息,我只好肝了一天,玩命debug,才爬出大坑
- 注意是否开启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" }
回复 agodelo 取消回复