fabric开发者模式链码开发

为什么要使用开发者模式?

如果不使用开发者模式,每次调试都要网络重启,channel创建,peer加入,这样太费事了,因此,我们需要使用开发者模式进行调试

启动网络

如何使用开发者模式启动网络?

使用basic-network

  1. 修改docker-compose.yaml文件,打开dev,开启7052端口
    # command: peer node start
    command: peer node start --peer-chaincodedev=true
    ports:
      - 7051:7051
      - 7052:7052
      - 7053:7053
  1. 修改启动脚本 start.sh,注意使用vi修改才是真的修改
docker-compose -f docker-compose.yml up -d ca.example.com orderer.example.com peer0.org1.example.com couchdb cli
  1. 启动 start.sh

这个脚本帮我们做了启动了节点,创建了channel,节点介入channel

这样网络就启动配置完成了,接下来我们就能愉快的进行chaincode开发了

chaincode部署

  1. 将开发好的chaincode注册给 peer,ip地址使用docker容器的ip
CORE_CHAINCODE_ID_NAME="mycc:v0"  npm start -- --peer.address grpc://172.17.0.1:7052
注册链码.png

这样就会运行的当前的链码状态,如果修改了链码要重新运行,只需停掉当前重新注册即可(重新运行上面指令)

  1. 安装链码

-n mycc指名字,也就是3中指定的chaincode_id_name,-p ...mycc 指容器中的链码映射路径

CORE_PEER_LOCALMSPID=Org1MSP
CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/users/[email protected]/msp 
peer chaincode install -l node -n mycc -v v0 -p /opt/gopath/src/github.com/mycc/

安装链码.png
  1. 实例化链码
CORE_PEER_LOCALMSPID=Org1MSP
CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/users/[email protected]/msp
peer chaincode instantiate -l node -n mycc -v v0 -C mychannel -c '{"args":["init","zzh","100","czbk","200"]}' -o 172.17.0.1:7050

链码实例化.png

交互,测试链码调用

  1. 查询初始化值
CORE_PEER_LOCALMSPID=Org1MSP
CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/users/[email protected]/msp 
peer chaincode invoke -n mycc -C mychannel -c '{"args":["query","zzh"]}' -o 172.17.0.1:7050

链码查询.png
  1. 转账
peer chaincode invoke -n mycc -C mychannel -c '{"args":["trans","czbk","zzh","10"]}' -o 172.17.0.1:7050

转账操作.png
  1. 查询转账后
peer chaincode invoke -n mycc -C mychannel -c '{"args":["query","czbk"]}' -o 172.17.0.1:7050
peer chaincode invoke -n mycc -C mychannel -c '{"args":["query","zzh"]}' -o 172.17.0.1:7050

你可能感兴趣的:(fabric开发者模式链码开发)