Hyperledger Fabric 链码的开发环境


title: Hyperledger Fabric 链码的开发
tags: Hyperledger, fabric ,区块链,chaincode


前面介绍过Hyperledger Fabric环境搭建和网络部署,现在我们开始链码开发。

Fabric的fabric-sample项目中提供了一个chaincode的开发环境,使chaincode在开发阶段可以进行快速开发、构建、运行、调试。

1. 编写chaincode代码

首先我们应该编写自己的智能合约,然后在fabric-samples/chaincode下新建文件夹,并把代码存放在改文件夹下面。

在chaincode目录下给我自带了几个项目,我们选择sacc这个项目。

2.启动网络

打开一个终端

首先进入chaincode-docker-devmode目录

cd fabric-samples/chaincode-docker-devmode

然后启动网络

docker-compose -f docker-compose-simple.yaml up

3.启动chaincode

打开第二个终端

进入chaincode容器执行

docker exec -it chaincode bash

如果成功进入应该显示/opt/gopath/src/chaincode#
然后进入sacc

cd sacc

接着编译项目

go build

最后我们启动节点

CORE_PEER_ADDRESS=peer:7051 CORE_CHAINCODE_ID_NAME=mycc:0 ./sacc

4.操作链码

打开第三个终端

启动cli

docker exec -it cli /bin/bash

当然也可以使用,但是我不建议这么做,我之前使用这个命令一直报错。

docker exec -it cli bash

下面安装链码

peer chaincode install -p chaincodedev/chaincode/sacc -n mycc -v 0

注意:-n是安装的名字,-v是version,-l是使用语言
如:peer chaincode install -n hello -v 1.0.0 -l golang -p

实例化链码

peer chaincode instantiate -n mycc -v 0 -c '{"Args":["str","helloworld"]}' -C myc

5.查询链码

peer chaincode query -n mycc -c '{"Args":["get","str"]}' -C myc

运行结果应该是

Query Result: helloworld

6. 退出

使用ctrl+c 结束第一个终端,然后输入

docker-compose -f docker-compose-simple.yaml down

你可能感兴趣的:(#,ChainCode,#,Hyperledger,fabric,区块链)