Fabric1.4.0 常见操作

Fabric1.4.0 常见操作

启动第一个网络

基础环境

配置好go、docker-ce、docker-compose环境,go需要1.10以上(最好用最新的),基础环境的安装参考:

https://www.cnblogs.com/willaty/p/9391547.html

切换版本、初始化

  • clone下fabric的最新代码后,git checkout v1.4.0到1.4.0这个稳定版本。
  • 编译基础工具,需要保证每个工具都编译完成
cd $GOPATH/src/github.com/hyperledger/fabric
make configtxgen
# 如果出错:'ltdl.h' file not found
# sudo apt install libtool libltdl-dev
make cryptogen
make configtxlator
  • 将编译出来的三个工具加到环境变量中,可用ln -s加到/usr/local/bin

启动测试网络

clone下fabric-sample,切换到v1.4.0,进入first-network

./byfn.sh generate # 生成证书,注意保证三个基础工具可以找到
./byfn.sh up # 启动网络

新增通道

在configtx.yaml文件中,新增通道定义,主要包括哪些组织:

之后,生成channel2.tx、锚节点更新的交易,命令参考byfn中generate相关步骤。

之后peer channel create、peer join通道即可。

新增组织

参考官方流程:https://hyperledger-fabric.readthedocs.io/en/release-1.4/channel_update_tutorial.html

主要流程如下:

  • 获取通道最新配置
  • 生成新组织密钥
  • 用工具添加到配置文件中
  • 用工具获取新配置文件与旧文件增量
  • 将此增量文件给相关人员签名,之后由某个节点更新

升级链码

进到cli中,配置好对应peer的环境变量信息(参考script.sh中的setGlobal函数);

直接安装升级后的链码,版本此时应该提高,之后运行upgrade(和实例化instantiate相似,只是改成upgrade而已);

之后每个节点install即可。

注意:fabric暂时不提供停止旧链码的操作,请手动删除已经运行的就链码容器,之后在peer的数据中,删除chaincode下的对应文件。

跨链调用

fabric跨链调用,参考文章最后几句话:https://hyperledger-fabric.readthedocs.io/en/release-1.4/developapps/chaincodenamespace.html

跨链调用,主要调用invokeChaincode函数,对于跨通道调用,只能查询,不能修改;如果需要修改,只能同一通道。

posted on 2019-06-19 15:39  willaty  阅读(496)  评论(0编辑  收藏  举报

导航