Hyperledger Explorer 是git项目,在 https://github.com/hyperledger/blockchain-explorer
有具体的搭建环境步骤,中间会有些错误,这里会把出现的解决办法写下。
我的环境是centos 7
1 安装依赖
Dependencies
Following are the software dependencies required to install and run hyperledger explorer:
Nodejs 8.11.x (Note that v9.x is not yet supported)
PostgreSQL 9.5 or greater
Linux-based operating system, such as Ubuntu or MacOS
2 Clone GIT Repository
Clone this repository to get the latest using the following command.
git clone https://github.com/hyperledger/blockchain-explorer.git
cd blockchain-explorer
3 Database Setup
cd blockchain-explorer/app
Modify explorerconfig.json to update PostgreSQL database settings.
"postgreSQL": {
"host": "127.0.0.1",
"port": "5432",
"database": "fabricexplorer",
"username": "hppoc",
"passwd": "password"
}
在centos 环境下
cd blockchain-explorer/app/persistence/fabric/postgreSQL/db
./createdb.sh
4 Authorization Configuration
cd blockchain-explorer/app
Modify explorerconfig.json to update Authorization (JWT) settings.
"jwt": {
"secret" : "a secret phrase!!",
"expiresIn": "2 days"
}
5 Fabric Network Setup
Note: This section will take some time to complete.
Setup your own network using the Building Your First Networktutorial from Hyperledger. Once you setup the network, please modify the values in/blockchain-explorer/app/platform/fabric/config.jsonaccordingly.
On another terminal:
cd blockchain-explorer/app/platform/fabric
Modify config.json to define your fabric network connection profile:
{
"network-configs": {
"first-network": {
"name": "firstnetwork",
"profile": "./connection-profile/first-network.json",
"enableAuthentication": false
}
},
"license": "Apache-2.0"
}
要修改下/blockchain-explorer/app/platform/fabric/connection-profile/first-network.json里的adminPrivateKey,signedCert,tlsCACerts项,要用你自己机器中的文件路径,每个人的环境得到的不一样的,以下标黑,其他的配置不变。
"organizations": {
"Org1MSP": {
"mspid": "Org1MSP",
"fullpath": true,
"adminPrivateKey": {
"path": "/home/mengwp/hyperledger/fabric-samples/first-network/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/2e6670bad266d1e87e6c9556e401749fb7be764b1ad5108bce9e879e61eda444_sk"
},
"signedCert": {
"path": "/home/mengwp/hyperledger/fabric-samples/first-network/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem"
}
}
},
"peers": {
"peer0.org1.example.com": {
"tlsCACerts": {
"path": "/home/mengwp/hyperledger/fabric-samples/first-network/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt"
},
"url": "grpcs://localhost:7051",
"eventUrl": "grpcs://localhost:7053",
"grpcOptions": {
"ssl-target-name-override": "peer0.org1.example.com"
}
}
}
6 Build Hyperledger Explorer
中间如果出错,请看下postgres导入db的过程是否正确,node版本是否过低。
cd blockchain-explorer
npm install
cd blockchain-explorer/app/test
npm install
npm run test
cd client/
npm install
npm run test:ci -- -u --coverage
npm run build
7 Run Hyperledger Explorer
cd blockchain-explorer/
./start.sh(it will have the backend up).
登录浏览器,用户名和密码随便输入。
http://localhost:8080/#/
问题总结:
1 导入postgress db 错误,执行createdb.sh的时候报错:could not change directory to "/home/dc2-user/kongli/blockchain-explorer/app/persistence/postgreSQL/db": 权限不够
解决:需要把blockchain-explorer下载在非当前用户文件夹下,比如/tmp,再运行createdb.sh命令
2 psql: 致命错误: 用户 "postgres" Ident 认证失败’
解决:/var/lib/pgsql/data/pg_hba.conf,把peer或ident 改为md5,注意下边黑色的标注。
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all md5
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 ident
参考:https://www.cnblogs.com/ibgo/p/5961849.html
https://help.ubuntu.com/stable/serverguide/postgresql.html