在./network_setup.sh up之后,用docker ps命令可看到:
三个dev为链码容器
一个cli是一个fabric-tools充当客户端的角色,它可用于执行创建channel,加入channel,安装和执行chaincode等操作。
四个fabric-peer为节点
一个order提供共识服务和生产区块
以上这些容器组成了一个Fabric集群
以上所启动的chaincode实例为example02。
输入命令:docker exec -it cli bash 进入cli容器测试:
这里做查询操作,该chaincode已经定义好了两个变量,在实例化时已经给该两个变量赋了初值,可使用invoke方法来使得该两变量值发生变化。
查询a命令:peer chaincode query -C mychannel -n mycc -c ‘{“Args”:[“query”,”a”]}’
查询b命令:peer chaincode query -C mychannel -n mycc -c ‘{“Args”:[“query”,”b”]}’
查询结果为a 90,表示a目前有90元;b 210,表示b目前有210元
现在做一个转账操作,a转给b 30元。
转账命令:peer chaincode invoke -o orderer.example.com:7050 –tls true –cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem -C mychannel -n mycc -c ‘{“Args”:[“invoke”,”a”,”b”,”30″]}’
查询ab:
说明转账成功。