本地化开发调试 Fabric -- kafka 共识模式 @Ubuntu-16.04 Z470本

~、本地化开发 Fabric 应用 -- kafka 共识模式     Ubuntu 16.04  @ Z470本 

         // 部署时用容器云,开发阶段直接本地调测,有助于理解代码、工程配置,尤其是上手那会。

 

一、kafka 准备。

打开两个终端,启动kafka内置的zk服务 + kafka消息队列。

chenlx@chenlx-ubu:/devel/tools/kafka_2.11-1.0.1$ 

bin/zookeeper-server-start.sh config/zookeeper.properties &

chenlx@chenlx-ubu:/devel/tools/kafka_2.11-1.0.1$

bin/kafka-server-start.sh config/server.properties &

bin/kafka-topics.sh --create --partitions 1 --replication-factor 1 --topic ka1 --zookeeper localhost:2181        # 不必提前建立与通道同名的主题'ka1' 

 

二、调试 Fabric 。

(一)~(三) :   一次性工程设置部署操作 

 

// 若未启动 orderer、peer,则先启动这两个服务(集群),再接着往下进入链码开发流程 。 

 

(四)、编译启动链码进程 。     

环境变量设置。

cd /devel/fabric-1.0.0/build/_worksp-Fabric1-0-0

export PATH=$PWD/bin:$PATH        # 将Fabric工具命令插入系统执行路径

export GOPATH=$PWD:$GOPATH

1、编译。

cd /devel/fabric-1.0.0/examples/chaincode/go/chaincode_example02/       #进入链码目录

go build

cd -            #返回工程配置目录下

 

2、启动 launch.json 中配的链码程序,如 "cc chaincode_example02 " 。

 

(五)、安装调用链码。      // 自动测试脚本 : chaincodetest.sh 

 

chenlx@chenlx-ubu:/devel/fabric-1.0.0/build/_worksp-Fabric1-0-0/cfg/fabric$ 

peer chaincode install -n mycc -v 0  -p github.com/hyperledger/fabric/examples/chaincode/go/chaincode_example02    # '-p' 指到目录即可 

peer chaincode instantiate -n mycc -v 0 -c '{"Args":["init","a","100","b","200"]}' -C ka1

 

peer chaincode  invoke  -n mycc -c '{"Args":["invoke","a","b","3"]}' -C ka1      // 可指定排序节点,加入: -o 127.0.0.1:17050 

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

 

//----多个链码程序同时开发调试,一样先编译并启动其他链码程序,再输入操作命令 。   

peer chaincode install -n myccka -v 0  -p github.com/hyperledger/fabric/examples/chaincode/go/chaincode_example02 -o 127.0.0.1:17050

peer chaincode instantiate -n myccka -v 0 -c '{"Args":["init","a","100","b","200"]}' -C ka1 -o 127.0.0.1:17050 -P "OR('Org1MSP.member','Org2MSP.member')"    # '-P'指定背书策略

peer chaincode  invoke  -n myccka -c '{"Args":["invoke","a","b","3"]}' -C ka1

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

 

你可能感兴趣的:(软件产品开发)