声明:本体系Hyperledger Fabric Composer相关分享都是基于MacPro进行多次亲测和体验。今天我这里主要介绍的是这些先决条件安装完成后,如何搭建和使用一个基础环境的问题,适合有一定基础的同学一起交流,也欢迎随时留言交流,大多是分享趟的一些个坑罢了。
针对在进入到这个环节前,需要先完成两个前置步骤:一是安装基础环境docker、node、npm(8.9.+)等;二是相关基础开发组件,比如composer-cli、composer-rest-server、generator-hyperledger-composer等。当然,官方文档也介绍了如何更新、卸载环境,这里就不做一一介绍了。
第一步:代码层面基础环境的下载和使用
基础环境:下载核心服务相关脚本压缩文件;
curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.tar.gz
基础环境:解压核心服务脚本文件;
tar -xvf fabric-dev-servers.tar.gz
基础环境:进入到脚本文件;
cd ~/fabric-dev-servers
第二步:配置参数及按照脚本操作部署
参数配置:如果是web看板配置相关环境,则配置参数到11上;
export FABRIC_VERSION=hlfv11
参数配置:如果是用来生产RestFul API的相关环境,则配置参数到12上;
export FABRIC_VERSION=hlfv12
脚本操作:下载Fabric相关内容;
./downloadFabric.sh
脚本操作:开启Fabric环境
./startFabric.sh
脚本操作:创建核心Peer节点
./createPeerAdminCard.sh
脚本操作:关闭Fabric相关运行环境(但是当前服务card等相关仍然存在)
./stopFabric.sh
脚本操作:拆卸Fabric相关
./teardownFabric.sh
第三步:开启Web PlayGround界面体验服务
Web服务开启:打开基于Fabric的Web应用程序,可以进行相关体验
这里需要注意的是,前面提到的参数配置export FABRIC_VERSION=hlfv11
composer-playground
第四步:如何部署一个开发网络并输出API看板
开发网络开启:使用Yeoman创建骨架业务网络
yo hyperledger-composer:businessnetwork
--- tutorial-network (网络名称填写,在开启服务时也会使用到)
--- org.example.mynetwork (命名空间填写,在编写模型时用到)
开发网络开启:创建业务网络存档Bna文件
composer archive create -t dir -n .
开发网络开启:安装业务网络(注意:这里如果要卸载当前业务网络必须运行teardownFabric.sh脚本文件)
composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.2.bna
开发网络开启:启动业务网络
composer network start --networkName tutorial-network --networkVersion 0.0.2 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card
开发网络开启:导入为可用的业务网卡
composer card import --file networkadmin.card
开发网络开启:检查业务网络是否已成功部署
composer network ping --card admin@tutorial-network
开发网络开启:删除业务网络业务网卡(直接删除相关网卡文件)
composer card delete -c PeerAdmin@fabric-network
composer card delete -c admin@tutorial-network (在更新新的业务网络的时候,这是很关键的一步,必须要先删除掉之前的网卡才能重新部署)
rm -fr ~/.composer
开发网络开启:查看当前网卡信息
composer card list
开发网络开启:生成REST服务器
composer-rest-server
--- 绝不使用命名空间
--- admin@tutorial-network 使用上面生产的业务网卡名
--- Specify if you want to enable the explorer test interface?Yes
第五步:如何更新网络业务并升级部署业务网卡
业务网卡升级:更新版本属性(注意:在业务网卡升级变更的时候,使用业务网卡升级的方式进行,而不是使用使用重新部署的方式,重新部署的方式执行出来的结果并不会发生改变)
在tutorial-network目录中,打开package.json文件,更新版本属性0.0.1到0.0.2
业务网卡升级:导航到tutorial-network目录下,重新生产业务网络存档Bna文件
composer archive create --sourceType dir --sourceName . -a tutorial-network@0.0.3.bna
业务网卡升级:安装更新后的业务网络网卡
composer network install --card PeerAdmin@hlfv1 --archiveFile tutorial-network@0.0.3.bna
业务网卡升级:升级业务网络网卡到新版本
composer network upgrade -c PeerAdmin@hlfv1 -n tutorial-network -V 0.0.2
业务网卡升级:检查当前版本的业务网络 是否已成功部署
composer network ping -c admin@tutorial-network | grep Business
开发网络开启:生成REST服务器
composer-rest-server
--- 绝不使用命名空间
--- admin@tutorial-network 使用上面生产的业务网卡名
--- Specify if you want to enable the explorer test interface?Yes