前提
Fabric安装
1.安装NodeJS
curl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash -
yum install -y nodejs
sudo ln -s /bin/node /usr/local/sbin/
sudo ln -s /bin/npm /usr/local/sbin/
#验证
node -v
v8.9.4
npm -v
5.6.0
2.其他工具
yum install gcc
yum install gcc-c++
yum install jq
3.下载fabric-samples
cd /opt/gopath/src/github.com/hyperledger/
git clone https://github.com/hyperledger/fabric-samples.git
4.安装balance-transfer依赖
cd fabric-samples
cd balance-transfer
sudo npm install node-gyp --registry=https://registry.npm.taobao.org
sudo npm install node-pre-gyp --registry=https://registry.npm.taobao.org
sudo npm install grpc --registry=https://registry.npm.taobao.org
sudo npm install --registry=https://registry.npm.taobao.org
sudo npm rebuild
5. 启动脚本
fabric网络和node服务都会运行起来。
balance-transfer下
修改runApp.sh,注释掉installNodeModules。
#installNodeModules
运行下面后,node服务会起来,不要有其他操作:
./runApp.sh
6.测试脚本
新创建一个窗口,进入到balance-transfer下,运行:
./testAPIs.sh
运行测试脚本,使用API来操作fabric网络,它主要做了:
创建用户
创建channel
安装chaincode
初始化chaincode
执行chaincode
各种查询
7.其他
多个orderer时,交易需要并且只需一个orderer节点,其他节点的状态不影响交易。
network-config.yaml中
channels:
XXXchannel:
orderers:
- orderer1.XXX.com
#- orderer2.XXX.com
#- orderer3.XXX.com
注:orderers中指定的第一个orderer才是通信的节点,其他指定内容是无用的。只需指定一个即可。