本文章所有操作基于的操作系统版本是:ubuntu16.04 64位
本文章基于的Fabric网络环境是《Fabric实战(2)运行一个简单的fabric网络(容器外)》
1 chaincode基本概念
Fabric中智能合约也叫chaincode,开发语言可以是Go、Java、Node.js等语言,其中GO语言使用最为广泛和稳定
2 chaincode相关的管理命令
Usage:
peer chaincode [command]
可用的自命令:
install #将指定的链码打包并安装到指定的peer节点上
instantiate #对已经执行过install命令的chaincode进行实例化
invoke #调用chaincode
package #对链码进行打包
query #调用chaincode进行查询
signpackage #对已经打包好的chaincode进行签名
upgrade #对银镜存在的chaincode进行更新
几个所有子命令公用的参数:
--cafile string #PEM格式证书的位置
-o, --orderer string #orderer服务器的访问地址
--tls #使用orderer的TLS证书的位置
--transient #JSON参数的编码映射
2.1 install
install 命令负责安装chaincode,这个过程命令会自动编译chaincode的源代码,如果有语法错误,会报错。install命令的参数如下所示:
-c, --ctor #JSON格式的构造参数 ,默认值是"{}"
-l, --l #编写chaincode的语言,默认值是"golang"
-n, --name #chaincode的名字
-p, --path #chaincode源代码的路径
-v, --version #当前操作的chaincode的版本
调用示例:
#运行命令的peer所在的MSPID
export set CORE_PEER_LOCALMSPID=Org1MSP
#运行命令的peer的MSP,使用组织内的管理员权限访问网络
export set CORE_PEER_MSPCONFIGPATH=/home/zym/fabric-ws/simple-demo/crypto-config/peerOrganizations/org1.simple-network.com/users/Admin@org1.simple-network.com/msp
#要访问的peer的地址和端口号
export set CORE_PEER_ADDRESS=peer0.org1.simple-network.com:7051
#执行peer chaincode install命令
peer chaincode install -n r_test_cc6 -v 1.1 -p github.com/hyperledger/fabric/examples/chaincode/go/chaincode_example02
install命令成功执行后,在被访问的peer模块的数据目录中会生成一个带-n参数和-v参数组成文件