建议和反馈

请填写你的反馈内容

感谢您对链客的信任!

恭喜您填写完个人简历!链客专注于区块链职位连接,帮助您的投递更加精准高效,赶快去选择自己心仪的岗位吧!

推动中国区块链事业发展始终是我们坚定不移的梦——链客团队

问答 > 超级账本 > 问答详情

Hyperledger Blockchain Explorer Node.js App无法启动

我一直在追逐自己的尾巴几天,试图让Blockchain Explorer在我的环境中运行(Ubuntu 16.04)。我已经成功启动了我的fabric-ca示例(v1.1)。以下是我的config.json档案:

{
"network-config": {
    "myorg": {
        "name": "myorg",
        "mspid": "myorgMSP",
        "peer1": {
            "requests": "grpcs://peer1-myorg:7051",
            "events": "grpcs://peer1-myorg:7053",
            "server-hostname": "peer1-myorg",
            "tls_cacerts": "../crypto/tls/peer1-myorg-client.crt"
        },
        "peer2": {
            "requests": "grpcs://peer2-myorg:7051",
            "events": "grpcs://peer2-myorg:7053",
            "server-hostname": "peer2-myorg",
            "tls_cacerts": "../crypto/tls/peer2-myorg-client.crt"
        },
        "admin": {
            "key": "../crypto/orgs/myorg/admin/msp/keystore",
            "cert": "../crypto/orgs/myorg/admin/msp/signcerts"
        }
    ....
    (three more orgs)
    ....
    }
},
"host": "localhost",
"port": "8080",
"channel": "entrust",
"keyValueStore": "/tmp/fabric-client-kvs",
"eventWaitTime": "30000",
"enableTls":true,
"users":[
    {
       "username":"admin",
       "secret":"adminpw"
    }
 ],
"pg": {
    "host": "postgres",
    "port": "5432",
    "database": "fabricexplorer",
    "username": "hppoc",
    "passwd": "password"
},
"license": "Apache-2.0"
}

我按照这些说明配置了Blockchain Explorer和PostgreSQL,它们都在与结构相同的网络上的不同容器中运行。我已将必要的文件夹映射到主机,以便Explorer可以访问$DATA文件夹中的加密材料,Postgres可以访问app/db/Explorer容器中的文件夹。所有对等方,订货方,CA和服务器位于同一网络中,并且彼此可见,并且可以通过主机名进行ping操作。在删除所有加密材料和数据后,我在干净的环境中启动了结构。

我对Node.js很新,并且在Explorer容器上尝试了6.9.0,6.9和6.14.2版本的节点(目前版本为v6.9.0)。main.js在Explorer容器上运行会产生以下错误:

postgres://hppoc:password@postgres:5432/fabricexplorer
Please open web browser to access :http://localhost:8080/
[31m[2018-06-01 21:14:26.087] [ERROR] FabricClientProxy - [39mFailed to find a peer matching the url grpcs://peer1-myorg:7051
[31m[2018-06-01 21:14:26.091] [ERROR] FabricClientProxy - [39mFailed to find a peer matching the url grpcs://peer1-myorg:7051
/usr/src/explorer/app/FabricClientProxy.js:37
        if (this.channels[org][this.channelName] == undefined)
                              ^
TypeError: Cannot read property 'entrust' of undefined
    at FabricClientProxy.getChannelForOrg (/usr/src/explorer/app/FabricClientProxy.js:37:25)
    at getChainInfo (/usr/src/explorer/app/query.js:91:34)
    at Object.getChannelHeight (/usr/src/explorer/app/query.js:190:9)
    at getMaxBlockNum (/usr/src/explorer/app/service/blockscanner.js:152:18)
    at Object.syncBlock (/usr/src/explorer/app/service/blockscanner.js:40:9)
    at Timeout._onTimeout (/usr/src/explorer/app/listener/blocklistener.js:46:22)
    at ontimeout (timers.js:365:14)
    at tryOnTimeout (timers.js:237:5)
    at Timer.listOnTimeout (timers.js:207:5)

似乎资源管理器可以连接pg资源管理器应该根据此jira问题使用fabric v1.1 ,但是我无法启动并运行它。

以下是在Postgres容器中打印的fabricexplorer数据库:

fabricexplorer=# \l
                                   List of databases
      Name      |  Owner   | Encoding |  Collate   |   Ctype    |   Access privi
leges   
----------------+----------+----------+------------+------------+---------------
--------
 fabricexplorer | hppoc    | UTF8     | en_US.utf8 | en_US.utf8 | 
 postgres       | postgres | UTF8     | en_US.utf8 | en_US.utf8 | 
 template0      | postgres | UTF8     | en_US.utf8 | en_US.utf8 | =c/postgres   
       +
                |          |          |            |            | postgres=CTc/p
ostgres
 template1      | postgres | UTF8     | en_US.utf8 | en_US.utf8 | =c/postgres   
       +
                |          |          |            |            | postgres=CTc/p
ostgres
(4 rows)
fabricexplorer=# \d
                   List of relations
 Schema |           Name            |   Type   | Owner 
--------+---------------------------+----------+-------
 public | blocks                    | table    | hppoc
 public | blocks_id_seq             | sequence | hppoc
 public | chaincodes                | table    | hppoc
 public | chaincodes_id_seq         | sequence | hppoc
 public | channel                   | table    | hppoc
 public | channel_id_seq            | sequence | hppoc
 public | peer                      | table    | hppoc
 public | peer_id_seq               | sequence | hppoc
 public | peer_ref_channel          | table    | hppoc
 public | peer_ref_channel_id_seq   | sequence | hppoc
 public | transaction               | table    | hppoc
 public | transaction_id_seq        | sequence | hppoc
 public | write_lock                | table    | hppoc
 public | write_lock_write_lock_seq | sequence | hppoc
(14 rows)
fabricexplorer=# SELECT * FROM channel;
 id | name | blocks | trans | createdt 
----+------+--------+-------+----------
(0 rows)

任何提示将不胜感激。我已经尝试过grpc(没有TLS),并试图从主机运行资源管理器无济于事。

killme丶healme

2019-05-15

295

0

撰写答案

请先登陆或注册

0个回答

相关问题
邀请

感谢您的善举,每一次解答会成为新人的灯塔,回答被采纳后获得20算力和相应的LK币奖励