无法使用一个节点设置超级账本浏览器(如基本网络示例)

时间:2018-12-05 05:03:05

标签: hyperledger-fabric hyperledger-explorer

任何人都可以通过基本网络示例(可以通过第一个网络进行设置)来设置超级账本浏览器。在这种情况下,它不会接我的同伴/频道。该配置适用于四个对等方和一个具有两个组织(第一网络)的订购者,但我似乎无法使其仅与一个对等方一起使用。任何帮助,将不胜感激!

结构版本:1.2 资源管理器版本:3.7.1

config.json(实际文件格式正确):-

    {
     "network-configs": {
       "network-1": {
         "version": "1.0",
          "clients": {
            "client-1": {
               "tlsEnable": true,
               "organization": "Org1MSP",
               "channel": "myc",
               "credentialStore": {
               "path": "./tmp/credentialStore_Org1/credential",
               "cryptoStore": {
                  "path": "./tmp/credentialStore_Org1/crypto"
                }
      }
    }
  },
  "channels": {
    "myc": {
      "peers": {
        "peer0.org1.example.com": {}
      },
      "connection": {
        "timeout": {
          "peer": {
            "endorser": "6000",
            "eventHub": "6000",
            "eventReg": "6000"
          }
        }
      }
    }
  },
  "organizations": {
    "Org1MSP": {
      "mspid": "Org1MSP",
      "fullpath": false,
      "adminPrivateKey": {
        "path":
          "/fabricsamples/basic-network/crypto-config/org1.example.com/users/Admin@org1.example.com/msp/keystore"
      },
      "signedCert": {
        "path":
          "/fabricsamples/basic-network/crypto-config/org1.example.com/users/Admin@org1.example.com/msp/signcerts"
      }
    },
    "OrdererMSP": {
      "mspid": "OrdererMSP",
      "adminPrivateKey": {
        "path":
          "/fabricsamples/basic-network/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/keystore"
      }
    }
  },
  "peers": {
    "peer0.org1.example.com": {
      "tlsCACerts": {
        "path":
          "/fabricsamples/basic-network/crypto-config/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt"
      },
      "url": "grpcs://peer0.org1.example.com:7051",
      "eventUrl": "grpcs://peer0.org1.example.com:7053",
      "grpcOptions": {
        "ssl-target-name-override": "peer0.org1.example.com"
      }
    }
  },
  "orderers": {
    "orderer.example.com": {
      "url": "grpcs://orderer.example.com:7050"
    }
  }
}
     },
    "configtxgenToolPath": "/home/ett/go/src/themeSCF/bin",
     "license": "Apache-2.0"
    }

1 个答案:

答案 0 :(得分:3)

首先,关于您的配置文件的一些建议:

  • tlsEnable应该为false -基本网络示例不使用TLS。
  • 所有URL均应使用grpc -grpcs仅在启用TLS时使用。
  • 所有URL均应使用本地主机-假设您的路径条目正确,则好像您在本地运行Explorer(即不在容器中)一样。在这种情况下,所有地址都应使用localhost。

您还需要编辑basic-network使用的docker-compose.yml文件以添加以下内容:

services: 
  peer0.org1.example.com: 
      environment:
        - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer0.org1.example.com:7051

否则,对等方将拒绝其组织外部的所有连接。

将此更改应用于docker-compose.yml后,我能够按照说明here,使用名为basic-network的配置文件夹和以下命令,在Docker容器中成功部署Explorer 3.7 :

./deploy_explorer.sh basic-network net_basic

以及config.json中的以下blockchain-explorer/examples/basic-network文件:

{
  "network-configs": {
    "network-1": {
      "version": "1.0",
      "clients": {
        "client-1": {
          "tlsEnable": false,
          "organization": "Org1MSP",
          "channel": "mychannel",
          "credentialStore": {
            "path": "./tmp/credentialStore_Org1/credential",
            "cryptoStore": {
              "path": "./tmp/credentialStore_Org1/crypto"
            }
          }
        }
      },
      "channels": {
        "mychannel": {
          "peers": {
            "peer0.org1.example.com": {}
          },
          "connection": {
            "timeout": {
              "peer": {
                "endorser": "6000",
                "eventHub": "6000",
                "eventReg": "6000"
              }
            }
          }
        }
      },
      "organizations": {
        "Org1MSP": {
          "mspid": "Org1MSP",
          "fullpath": false,
          "adminPrivateKey": {
            "path":
              "/tmp/crypto/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore"
          },
          "signedCert": {
            "path":
              "/tmp/crypto/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts"
          }
        },
        "OrdererMSP": {
          "mspid": "OrdererMSP",
          "adminPrivateKey": {
            "path":
              "/tmp/crypto/ordererOrganizations/example.com/users/Admin@example.com/msp/keystore"
          }
        }
      },
      "peers": {
        "peer0.org1.example.com": {
          "tlsCACerts": {
            "path":
              "/tmp/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt"
          },
          "url": "grpc://peer0.org1.example.com:7051",
          "eventUrl": "grpc://peer0.org1.example.com:7053",
          "grpcOptions": {
            "ssl-target-name-override": "peer0.org1.example.com"
          }
        }
      },
      "orderers": {
        "orderer.example.com": {
          "url": "grpc://orderer.example.com:7050"
        }
      }
    }
  },
  "configtxgenToolPath": "/home/fabric-path/workspace/fabric-samples/bin",
  "license": "Apache-2.0"
}

如果按照上述说明操作后仍然遇到问题,请发布Blockchain Explorer报告的任何错误的详细信息以及Blockchain Explorer日志文件(app.log)。使用docker部署脚本时,可以使用以下命令查看这些信息:

docker logs blockchain-explorer
docker exec -t blockchain-explorer cat /opt/logs/app/app.log