简单在fabric1.4环境下进行链码测试的流程记录

  • Post author:
  • Post category:其他


这里我想记录一下每次开机之后关于fabric重新部署环境和测试链码的心得。

我们首先查看是否有通道的配置文件:

我们可以利用其中的mychannel.tx生成一个通道文件:


./bin/configtxgen -profile TwoOrgsChannel -outputCreateChannelTx ./channel-artifacts/mychannel.tx -channelID mychannel

首先我们输入 docker ps 查看之前开启的容器:

然后输入  docker rm -f `docker ps -aq` 删除所有的容器 rm代表remove的意思 docker pa -aq 代表列出所有容器的id

docker ps -aq  代表列出所有容器的id

然后我们输入指令开启需要开启的对应的容器:

启动order和perr

docker-compose -f docker-orderer.yaml up -d

docker-compose -f docker-peer.yaml up -d

然后我们进入客户端(client)容器中进行操作:


docker ex


ec


-it cli bash


peer channel create -o orderer.example.com:7050 -c mychannel -f ./channel-artifacts/mychannel.tx

然后我们需要利用配置文件加入对应的通道:


peer channel join -b mychannel.block

我们再将自己写的智能合约安装一下:

peer chaincode install -n myfanfan -p github.com/hyperledger/fabric/aberic/chaincode/go/chaincode_example02/abcde -v 1.0

对应文件所在地方:

我们进行初始化链码:

peer chaincode instantiate -o orderer.example.com:7050 -C mychannel -n myfan01 -c ‘{“Args”:[“init”]}’ -v 1.0

用invoke调用方法:

输入自定义字符串:peer chaincode invoke -C mychannel -n myfanfan -c ‘{“Args”:[“saySomething”,”hello”]}’

增加节点: peer chaincode invoke -C mychannel -n myfanfan -c ‘{“Args”:[“addPeer”,”a”,”0″,”0″,”d”,”e”,”0″]}’

查询指定节点:peer chaincode query -C mychannel -n mych01 -c ‘{“Args”:[“userQueryPeer”,”a”]}’

加入委员会:peer chaincode invoke -C mychannel -n mych01 -c ‘{“Args”:[“alterIsCapacity”,”a”]}’

退出委员会:peer chaincode invoke -C mychannel -n mych01 -c ‘{“Args”:[“alterQuitCapacity”,”a”]}’

获取当前用户的证书内容:peer chaincode invoke -C mychannel -n myfanfan -c ‘{“Args”:[“getUserCert”]}’

注意这里:我们再修改值的时候,系统会有一个延迟的,所以要等个几秒钟再查询,其实是可以修改值的。

用query调用方法:

两者都可以执行,但是,一般我们查询就用query,如果是修改数据推荐使用invoke。

这里,总结一个小细节:

在底层链码go语言层面:

日志文件应该是用来记录操作,保存操作的。

自己一点小小的心得,用来记录,希望可以帮助到大家,也方便自己日后回顾知识。



版权声明:本文为lakersssss24原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。