Ubuntu上HyperLedger fabric1.0测试

接着上一篇 也记录一下fabric1.0的测试过程 之前一直按照《区块链技术指南》上操作,启动时后台日志中输出如下错误信息


集群后台错误,会导致命令错误,猜测原因是容器之间有依赖关系,orderer的7050还没有开启,peer0的grpc失败。

纯属个人猜测,因为下面的Error也显示因为 grpc超时


后来我索性用了docker-compose-files/hyperledger/1.0目录下的setup_setup_fabric_1.0.sh脚本,用sudo执行


脚本最后会启动容器,后台显示

NewDeliverService -> INFO 027 Creating delivery service to get blocks from the ordering service没有错误


进入容器 peer0,在容器中执行部署命令 install 和 instantiate,注意输出日志无错误提示,最终返回结果应该如下图所示

docker exec -it fabric-peer0 bash
peer chaincode install -n test_cc -p github.com/hyperledger/fabric/examples/chaincode/go/chaincode_example02 -c '{"Args":["init","a","100","b","200"]}' -v v0


容器后台日志


peer chaincode instantiate -n test_cc -p github.com/hyperledger/fabric/examples/chaincode/go/chaincode_example02 -c '{"Args":["init","200"]}' -v v0


此时,系统中生成类似 dev-peer0-test_cc-v0 的 chaincode Docker 镜像,和相同名称的容器。


对部署成功的 chaincode 执行查询操作,查询 a 的余额。同样的,在 peer0 容器中执行如下命令,注意输出错误信息,最后的结果为 Query Result:100 。

peer chaincode query -n test_cc -c '{"Args":["query","a"]}'


也可以用另外一种方式查询 b 的余额,注意最终返回结果为 Query Result: 200 。

peer chaincode invoke -n test_cc -c '{"Args":["query","b"]}'


对部署成功的 chaincode 执行调用操作,如 a 向 b 转账 10 元。此时,再次查询 a 和 b 的余额,发现发生变化,a 的新余额为 90,b 的新余额为 210。

peer chaincode invoke -n test_cc -c '{"Args":["invoke","10"]}'


peer chaincode query -n test_cc -c '{"Args":["query","a"]}'
peer chaincode query -n test_cc -c '{"Args":["query","b"]}'

相关文章

目录前言一、创建Hadoop用户二、更新apt和安装Vim编辑器三、...
原文连接:https://www.cnblogs.com/yasmi/p/5192694.html ...
电脑重启后,打开VirtualBox,发现一直用的虚拟机莫名的消失...
参见:https://blog.csdn.net/weixin_38883338/article/deta...
Ubuntu 18.04 LTS 已切换到 Netplan 来配置网络接口。Netpla...
介绍每个 Web 服务都可以通过特定的 URL 在 Internet 上访问...